@axboot-mcp/mcp-server 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +119 -0
- package/MCP_TOOL_PLAN.md +710 -0
- package/MCP_USAGE.md +914 -0
- package/README.md +168 -0
- package/REPOSITORY_CONVENTIONS.md +250 -0
- package/SEARCH_PARAMS_MCP_TOOL_COMPLETE_PLAN.md +646 -0
- package/SEARCH_PARAMS_PLAN.md +2570 -0
- package/STORE_PATTERNS.md +1178 -0
- package/debug-dto.js +72 -0
- package/generate-banner-store.js +62 -0
- package/generation-plan.json +2176 -0
- package/generation-results.json +1817 -0
- package/package.json +45 -0
- package/scripts/batch-generate-all.js +159 -0
- package/scripts/batch-generate-mcp.js +329 -0
- package/scripts/batch-generate-stores-v2.js +272 -0
- package/scripts/batch-generate-stores.js +179 -0
- package/scripts/batch-plan.json +3810 -0
- package/scripts/batch-process.py +90 -0
- package/scripts/batch-regenerate.js +356 -0
- package/scripts/direct-generate.js +227 -0
- package/scripts/execute-batches.js +1911 -0
- package/scripts/generate-all-stores.js +144 -0
- package/scripts/generate-stores-mcp.js +161 -0
- package/scripts/generate-stores-v2.js +450 -0
- package/scripts/generate-stores-v3.js +412 -0
- package/scripts/generate-stores-v4.js +521 -0
- package/scripts/generate-stores.js +382 -0
- package/scripts/repos-to-process.json +1899 -0
- package/src/config/nh-layout-patterns.ts +166 -0
- package/src/docs/HOOK_GENERATION_PLAN.md +2226 -0
- package/src/docs/NH_STORE_PATTERNS.md +297 -0
- package/src/docs/README.md +216 -0
- package/src/docs/index.ts +28 -0
- package/src/docs/loader.ts +568 -0
- package/src/docs/patterns.json +419 -0
- package/src/docs/practical-examples.md +732 -0
- package/src/docs/quick-start.md +257 -0
- package/src/docs/requirements-analysis-guide.md +364 -0
- package/src/docs/rules.json +321 -0
- package/src/docs/store-pattern-analysis.md +664 -0
- package/src/docs/store-patterns-rules.md +1168 -0
- package/src/docs/store-patterns-usage-guide.md +1835 -0
- package/src/docs/troubleshooting.md +544 -0
- package/src/docs/type-selection-guide.md +572 -0
- package/src/docs//354/202/254/354/232/251/353/262/225/AntD-/354/273/264/355/217/254/353/204/214/355/212/270-/354/202/254/354/232/251/353/262/225.md +1515 -0
- package/src/docs//354/202/254/354/232/251/353/262/225/DataGrid-/354/202/254/354/232/251/353/262/225.md +866 -0
- package/src/docs//354/202/254/354/232/251/353/262/225/FormItem-/354/202/254/354/232/251/353/262/225.md +903 -0
- package/src/docs//354/202/254/354/232/251/353/262/225/FormModal-/354/202/254/354/232/251/353/262/225.md +1155 -0
- package/src/docs//354/202/254/354/232/251/353/262/225/MCP-/353/260/224/354/235/264/353/270/214/354/275/224/353/224/251-/352/260/200/354/235/264/353/223/234.md +1133 -0
- package/src/docs//354/202/254/354/232/251/353/262/225/MSW-Mock-/353/215/260/354/235/264/355/204/260-/354/202/254/354/232/251/353/262/225.md +579 -0
- package/src/docs//354/202/254/354/232/251/353/262/225/Search-/354/273/264/355/217/254/353/204/214/355/212/270-/354/202/254/354/232/251/353/262/225.md +738 -0
- package/src/docs//354/202/254/354/232/251/353/262/225/Store-/355/214/250/355/204/264-/354/202/254/354/232/251/353/262/225.md +1135 -0
- package/src/docs//354/202/254/354/232/251/353/262/225//355/231/224/353/251/264/352/265/254/354/204/261-/355/203/200/354/236/205/353/263/204-/352/260/234/353/260/234/354/210/234/354/204/234.md +1805 -0
- package/src/docs//354/202/254/354/232/251/353/262/225//355/231/224/353/251/264/355/203/200/354/236/205/353/263/204-/352/260/234/353/260/234-/355/224/204/353/241/254/355/224/204/355/212/270-/352/260/200/354/235/264/353/223/234.md +946 -0
- package/src/docs//354/202/254/354/232/251/353/262/225//355/231/225/354/236/245/355/231/224/353/251/264/355/203/200/354/236/205/353/263/204-/354/203/201/354/204/270-/355/224/204/353/241/254/355/224/204/355/212/270/352/260/200/354/235/264/353/223/234.md +2422 -0
- package/src/features/store-features.ts +232 -0
- package/src/handlers/analyze-requirements.ts +403 -0
- package/src/handlers/analyze.ts +1373 -0
- package/src/handlers/generate-from-requirements.ts +250 -0
- package/src/handlers/generate-hook.ts +950 -0
- package/src/handlers/generate-interactive.ts +840 -0
- package/src/handlers/generate-listdatagrid.ts +521 -0
- package/src/handlers/generate-multi-stores.ts +577 -0
- package/src/handlers/generate-requirements-from-layout.ts +160 -0
- package/src/handlers/generate-search-params.ts +717 -0
- package/src/handlers/generate.ts +911 -0
- package/src/handlers/list-templates.ts +104 -0
- package/src/handlers/scan-metadata.ts +485 -0
- package/src/handlers/suggest-layout.ts +326 -0
- package/src/index.ts +959 -0
- package/src/prompts/search-params.md +793 -0
- package/src/templates/index.ts +107 -0
- package/src/templates/unified.ts +462 -0
- package/store-generation-error-patterns.md +225 -0
- package/test/useAgentStore.ts +136 -0
- package/test-server.js +78 -0
- package/tsconfig.json +20 -0
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
# NH Store 패턴 분석
|
|
2
|
+
|
|
3
|
+
이 문서는 NH 프로젝트의 Store 파일들을 모듈별로 분석하여 중복 케이스를 제거하고 고유한 패턴만을 정리한 것입니다.
|
|
4
|
+
|
|
5
|
+
## Store 패턴 유형
|
|
6
|
+
|
|
7
|
+
| Type | 이름 | 설명 | 주요 States | 주요 Actions |
|
|
8
|
+
|------|------|------|-------------|--------------|
|
|
9
|
+
| Type 1 | 기본 리스트 + 상세 | 선택된 아이템의 상세 정보 표시, 저장/수정 지원 | selectedItem, detailLoading, saveRequestValue | setSelectedItem, callSaveApi |
|
|
10
|
+
| Type 2 | 마스터-디테일 + 모달 + 삭제 | 왼쪽 리스트, 오른쪽 상세, 모달, 삭제 기능 | selectedItem, detail, detailSpinning, modalOpen | callDeleteApi |
|
|
11
|
+
| Type 3 | 트리 기반 | 트리 구조 데이터, 펼치기/접기, 저장 지원 | treeData, listData, expandedKeys, selectedItem | callTreeApi, callSaveApi |
|
|
12
|
+
| Type 4 | 대시보드 | 여러 개의 리스트와 요약 정보, 탭 전환 | statData, statSpinning, listData | callStatApi, callListApi |
|
|
13
|
+
| Type 5 | 단순 리스트 | 최소한의 기능만 있는 단순 리스트 | listData, listSpinning, listPage | callListApi |
|
|
14
|
+
| Type 6 | 재정렬 가능 리스트 | 드래그 앤 드롭으로 순서 변경 가능 | formValues, formValueChanged, setDspySortArray | setDspySortArray |
|
|
15
|
+
| Type 7 | 마스터-디테일 + 모달 + 삭제 + 엑셀 | 왼쪽 리스트, 오른쪽 상세, 모달, 삭제, 엑셀 다운로드 | selectedItem, detailSpinning, modalOpen, deleteSpinning | callDeleteApi, callExcelDownloadApi |
|
|
16
|
+
| Type 8 | 리스트 + 선택 + 엑셀 다운로드 | 선택 아이템, 체크박스, 엑셀 다운로드 (상세 없음) | checkedRowKeys, excelSpinning | callExcelDownloadApi |
|
|
17
|
+
| Type 9 | 마스터-디테일 + 모달 + 상세조회 API | 왼쪽 리스트, 오른쪽 상세, 모달, 상세 조회 API 호출 | selectedItem, detailLoading, saveRequestValue | setSelectedItem(상세조회), callSaveApi |
|
|
18
|
+
| Type 10 | 마스터-디테일 + 엑셀 다운로드 | 선택된 행 표시, 엑셀 다운로드 (상세/모달 없음) | listSelectedRowKey, excelSpinning | callExcelDownloadApi |
|
|
19
|
+
| Multi-List | 다중 리스트 통합 | 여러 리스트를 하나의 Store로 통합 | mainListData, topListData, bottomListData, ... | callMainListApi, callTopListApi, ... |
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## 모듈별 Store 패턴
|
|
24
|
+
|
|
25
|
+
### B2B 모듈
|
|
26
|
+
|
|
27
|
+
**고유 패턴:** 3개 (Type 1, Type 5, Type 7)
|
|
28
|
+
|
|
29
|
+
| Store 파일명 | Type | 설명 |
|
|
30
|
+
|-------------|------|------|
|
|
31
|
+
| useB2BConsultingDeptConfigStore | Type 1 | B2B 상담 부서 설정 (상품 리스트, 파트너십 리스트 저장) |
|
|
32
|
+
| useB2BEstimateConsultingStore | Type 7 | B2B 견적 상담 (삭제, 엑셀 다운로드 포함) |
|
|
33
|
+
| useB2BIntroCaseStore | Type 5 | B2B 소개 케이스 (단순 리스트) |
|
|
34
|
+
|
|
35
|
+
**중복 제거 대상:** useB2BPartnershipInquiryStore, useB2BProductStore, useB2BMngDeptStore → Type 5 (useB2BIntroCaseStore와 동일)
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
### Benefit 모듈
|
|
40
|
+
|
|
41
|
+
**고유 패턴:** 4개 (Type 1, Type 4, Type 5, Type 9)
|
|
42
|
+
|
|
43
|
+
| Store 파일명 | Type | 설명 |
|
|
44
|
+
|-------------|------|------|
|
|
45
|
+
| useBenefitEventStore | Type 1 | 혜택 이벤트 (상세, 저장) |
|
|
46
|
+
| useBenefitProductStore | Type 4 | 혜택 상품 대시보드 (통계 데이터 + 리스트) |
|
|
47
|
+
| useBenefitCouponHistoryStore | Type 5 | 혜택 쿠폰 내역 (단순 리스트) |
|
|
48
|
+
| useBenefitCouponStore | Type 9 | 혜택 쿠폰 관리 (상세조회 API + 저장) |
|
|
49
|
+
| useBenefitGifticonStore | Type 9 | 혜택 기프티콘 관리 (상세조회 API + 저장) |
|
|
50
|
+
|
|
51
|
+
**중복 제거 대상:** useBenefitGificonHistoryStore, useBenefitLiveDealStore, useBenefitMileageDailySummaryStore, useBenefitMileageHistoryStore, useBenefitMileageUsageHistoryStore, useBenefitPointHistoryStore, useBenefitPointHurdleStore, useBenefitPointStore → Type 5 (useBenefitCouponHistoryStore와 동일)
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
### CS 모듈
|
|
56
|
+
|
|
57
|
+
**고유 패턴:** 2개 (Type 3, Type 5)
|
|
58
|
+
|
|
59
|
+
| Store 파일명 | Type | 설명 |
|
|
60
|
+
|-------------|------|------|
|
|
61
|
+
| useCsCategoryGuideStore | Type 3 | CS 카테고리 가이드 (트리 구조) |
|
|
62
|
+
| useCsAsStatusStore | Type 5 | CS AS 현황 (단순 리스트) |
|
|
63
|
+
|
|
64
|
+
**중복 제거 대상:** useCsConsultationStore, useCsFaqStore, useCsManualStore, useCsNavienStoryStore, useCsUserGuideStore → Type 5 (useCsAsStatusStore와 동일)
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
### Department 모듈
|
|
69
|
+
|
|
70
|
+
**고유 패턴:** 1개 (Type 5)
|
|
71
|
+
|
|
72
|
+
| Store 파일명 | Type | 설명 |
|
|
73
|
+
|-------------|------|------|
|
|
74
|
+
| useDepartmentStore | Type 5 | 부서 관리 (단순 리스트) |
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
### Display 모듈
|
|
79
|
+
|
|
80
|
+
**고유 패턴:** 2개 (Type 5, Type 6)
|
|
81
|
+
|
|
82
|
+
| Store 파일명 | Type | 설명 |
|
|
83
|
+
|-------------|------|------|
|
|
84
|
+
| useDisplayBannerMenuStore | Type 5 | 디스플레이 배너 메뉴 (단순 리스트) |
|
|
85
|
+
| useDisplayMainStore | Type 6 | 디스플레이 메인 (재정렬 가능 리스트) |
|
|
86
|
+
|
|
87
|
+
**중복 제거 대상:** useDisplayGnbMenuStore, useDisplayPackageRecommendedStore, useDisplayPopupMenuStore, useDisplayProductRecommendedStore, useDisplayQuickMenuStore, useDisplayToastMenuStore → Type 5 (useDisplayBannerMenuStore와 동일)
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
### KDH 모듈
|
|
92
|
+
|
|
93
|
+
**고유 패턴:** 1개 (Type 5)
|
|
94
|
+
|
|
95
|
+
| Store 파일명 | Type | 설명 |
|
|
96
|
+
|-------------|------|------|
|
|
97
|
+
| useKdhArchivePolicyStore | Type 5 | KDH 아카이브 정책 (단순 리스트) |
|
|
98
|
+
|
|
99
|
+
**중복 제거 대상:** useKdhArchiveReportsStore, useKdhAuditOrgStore, useKdhAuditReportsStore, useKdhBoardActivityStore, useKdhBusinessAreaManageStore, useKdhBusinessReportsStore, useKdhCompanyHistoryManageStore, useKdhDigitalGoodsStore, useKdhDividendStatusStore, useKdhFinancialHighlightsAbroadStore, useKdhFinancialHighlightsStore, useKdhIRContactStore, useKdhMediaLibraryStore, useKdhPopupManageStore, useKdhPressReleaseStore, useKdhPrivacyPolicyStore, useKdhPublicNoticesStore, useKdhShareHolderStatusStore, useKdhShareholdersMeetingStore → Type 5 (useKdhArchivePolicyStore와 동일)
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
### Member 모듈
|
|
104
|
+
|
|
105
|
+
**고유 패턴:** 3개 (Type 5, Type 9, Multi-List)
|
|
106
|
+
|
|
107
|
+
| Store 파일명 | Type | 설명 |
|
|
108
|
+
|-------------|------|------|
|
|
109
|
+
| useMemberCompListStore | Type 5 | 회원사 리스트 (단순 리스트) |
|
|
110
|
+
| useMemberListStore | Type 9 | 회원 목록 관리 (상세조회 API + 저장) |
|
|
111
|
+
| useMemberDashboardStore | Multi-List | 회원 대시보드 (요약 + 리스트1 + 리스트2 통합) |
|
|
112
|
+
|
|
113
|
+
**중복 제거 대상:** useMemberEmployeeStatusHistoryStore, useMemberImpossibleRegisterStore, useMemberInstallerListStore, useMemberLeaveStore → Type 5 (useMemberCompListStore와 동일)
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
### Navien 모듈
|
|
118
|
+
|
|
119
|
+
**고유 패턴:** 1개 (Type 5)
|
|
120
|
+
|
|
121
|
+
| Store 파일명 | Type | 설명 |
|
|
122
|
+
|-------------|------|------|
|
|
123
|
+
| useNavienNoticeStore | Type 5 | 네비엔 공지사항 (단순 리스트) |
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
### Order 모듈
|
|
128
|
+
|
|
129
|
+
**고유 패턴:** 4개 (Type 5, Type 7, Type 9, Type 10)
|
|
130
|
+
|
|
131
|
+
| Store 파일명 | Type | 설명 |
|
|
132
|
+
|-------------|------|------|
|
|
133
|
+
| useOrderPaymentAllStore | Type 5 | 주문 전체 조회 (단순 리스트) |
|
|
134
|
+
| useOrderClaimCancelStore | Type 7 | 주문 취소 (삭제 + 엑셀 다운로드) |
|
|
135
|
+
| useOrderPaymentDetailStore | Type 9 | 주문 상세 (상세조회 API + 저장) |
|
|
136
|
+
| useOrderClaimRefundStore | Type 10 | 주문 환불 (엑셀 다운로드) |
|
|
137
|
+
|
|
138
|
+
**중복 제거 대상:**
|
|
139
|
+
- Type 5: useOrderClaimChangeStore, useOrderClaimReturnStore, useOrderEmployeePurchaseStore, useOrderInstallCounselStore, useOrderPaymentInTransitInstallStore, useOrderPaymentInTransitStore, useOrderPaymentMngStore, useOrderPaymentPaymentCompletedStore, useOrderPaymentPreparingShipmentStore, useOrderPurchaseConfirmedStore, useOrderSubscriptionConsultationStore, useOrderSubscriptionDirectRentalStore → Type 5 (useOrderPaymentAllStore와 동일)
|
|
140
|
+
- Type 7: useOrderClaimChangeStore, useOrderClaimReturnStore → Type 7 (useOrderClaimCancelStore와 동일)
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
### Personal 모듈
|
|
145
|
+
|
|
146
|
+
**고유 패턴:** 1개 (Type 5)
|
|
147
|
+
|
|
148
|
+
| Store 파일명 | Type | 설명 |
|
|
149
|
+
|-------------|------|------|
|
|
150
|
+
| usePersonalRecommendedConditionStore | Type 5 | 개인화 추천 조건 (단순 리스트) |
|
|
151
|
+
|
|
152
|
+
**중복 제거 대상:** usePersonalRecommendedProductStore → Type 5 (usePersonalRecommendedConditionStore와 동일)
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
### Product 모듈
|
|
157
|
+
|
|
158
|
+
**고유 패턴:** 3개 (Type 3, Type 5, Type 10)
|
|
159
|
+
|
|
160
|
+
| Store 파일명 | Type | 설명 |
|
|
161
|
+
|-------------|------|------|
|
|
162
|
+
| useProductAdditionalCostStore | Type 5 | 상품 추가 비용 (단순 리스트) |
|
|
163
|
+
| useProductCategoryStore | Type 3 | 상품 카테고리 (트리 구조) |
|
|
164
|
+
| useProductMasterStore | Type 10 | 상품 마스터 (엑셀 다운로드) |
|
|
165
|
+
|
|
166
|
+
**중복 제거 대상:** useProductBasicInstallationStore, useProductCardInterestPlanStore, useProductCautionNoticeStore, useProductCertifiAwardStore, useProductCommonFilterStore, useProductCommonUspStore, useProductDeliveryConfigStore, useProductDeliveryInfoStore, useProductInfoNoticeStore, useProductInstallProcessStore, useProductLabelStore, useProductNaverEpLogStore → Type 5 (useProductAdditionalCostStore와 동일)
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
### Biz 모듈
|
|
171
|
+
|
|
172
|
+
**고유 패턴:** 1개 (Type 5)
|
|
173
|
+
|
|
174
|
+
| Store 파일명 | Type | 설명 |
|
|
175
|
+
|-------------|------|------|
|
|
176
|
+
| useBizMemberListStore | Type 5 | 비즈니스 회원 목록 (단순 리스트) |
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
## 요약 통계
|
|
181
|
+
|
|
182
|
+
### Type별 사용 현황
|
|
183
|
+
|
|
184
|
+
| Type | 사용 모듈 수 | 대표 모듈 |
|
|
185
|
+
|------|--------------|-----------|
|
|
186
|
+
| Type 5 (단순 리스트) | 11개 | 전체 모듈 |
|
|
187
|
+
| Type 7 (마스터-디테일 + 모달 + 삭제 + 엑셀) | 2개 | B2B, Order |
|
|
188
|
+
| Type 9 (마스터-디테일 + 모달 + 상세조회 API) | 2개 | Benefit, Member |
|
|
189
|
+
| Type 3 (트리 기반) | 2개 | CS, Product |
|
|
190
|
+
| Type 10 (마스터-디테일 + 엑셀 다운로드) | 2개 | Order, Product |
|
|
191
|
+
| Type 1 (기본 리스트 + 상세) | 2개 | B2B, Benefit |
|
|
192
|
+
| Type 4 (대시보드) | 1개 | Benefit |
|
|
193
|
+
| Type 6 (재정렬 가능 리스트) | 1개 | Display |
|
|
194
|
+
| Multi-List (다중 리스트 통합) | 1개 | Member |
|
|
195
|
+
| Type 2 (마스터-디테일 + 모달 + 삭제) | 0개 | - |
|
|
196
|
+
| Type 8 (리스트 + 선택 + 엑셀 다운로드) | 0개 | - |
|
|
197
|
+
|
|
198
|
+
### 모듈별 고유 패턴 수
|
|
199
|
+
|
|
200
|
+
| 모듈 | 고유 패턴 수 | 사용 Type |
|
|
201
|
+
|------|-------------|-----------|
|
|
202
|
+
| B2B | 3개 | Type 1, 5, 7 |
|
|
203
|
+
| Benefit | 4개 | Type 1, 4, 5, 9 |
|
|
204
|
+
| CS | 2개 | Type 3, 5 |
|
|
205
|
+
| Department | 1개 | Type 5 |
|
|
206
|
+
| Display | 2개 | Type 5, 6 |
|
|
207
|
+
| KDH | 1개 | Type 5 |
|
|
208
|
+
| Member | 3개 | Type 5, 9, Multi-List |
|
|
209
|
+
| Navien | 1개 | Type 5 |
|
|
210
|
+
| Order | 4개 | Type 5, 7, 9, 10 |
|
|
211
|
+
| Personal | 1개 | Type 5 |
|
|
212
|
+
| Product | 3개 | Type 3, 5, 10 |
|
|
213
|
+
| Biz | 1개 | Type 5 |
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
## Repository를 보고 Store 구현 프롬프트
|
|
218
|
+
|
|
219
|
+
### MCP 도구 사용 예시
|
|
220
|
+
|
|
221
|
+
```bash
|
|
222
|
+
# 1. Repository 분석
|
|
223
|
+
analyze_interface({
|
|
224
|
+
interfacePath: "/path/to/MemberRepository.ts"
|
|
225
|
+
})
|
|
226
|
+
|
|
227
|
+
# 2. 요구사항 기반 Store 생성 (자동 타입 선택)
|
|
228
|
+
generate_store_from_requirements({
|
|
229
|
+
interfacePath: "/path/to/MemberRepository.ts",
|
|
230
|
+
outputPath: "/path/to/useMemberListStore.ts",
|
|
231
|
+
requirements: "회원 목록 조회하고 선택하면 상세 보이고 저장도 해줘"
|
|
232
|
+
})
|
|
233
|
+
|
|
234
|
+
# 3. 다중 리스트 Store 생성
|
|
235
|
+
generate_multi_stores({
|
|
236
|
+
interfacePath: "/path/to/OrderRepository.ts",
|
|
237
|
+
outputPath: "/path/to/useOrderStore.ts",
|
|
238
|
+
requirements: "왼쪽 목록, 상단 디테일 목록, 하단 디테일 목록, 각 목록은 검색과 엑셀 다운로드, 하단은 체크박스",
|
|
239
|
+
baseStoreName: "useOrderStore"
|
|
240
|
+
})
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
### 모듈별 Store 생성 가이드
|
|
244
|
+
|
|
245
|
+
#### Type 1 (기본 리스트 + 상세) - B2B, Benefit
|
|
246
|
+
```
|
|
247
|
+
리스트 조회하고 선택하면 상세 보이고 저장도 해줘
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
#### Type 3 (트리 기반) - CS, Product
|
|
251
|
+
```
|
|
252
|
+
카테고리 트리 구조로 보여주고 저장할 수 있게 해줘
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
#### Type 4 (대시보드) - Benefit
|
|
256
|
+
```
|
|
257
|
+
통계 데이터와 리스트를 함께 보여줘
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
#### Type 5 (단순 리스트) - 전체 모듈
|
|
261
|
+
```
|
|
262
|
+
목록 조회만 해줘
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
#### Type 6 (재정렬 가능 리스트) - Display
|
|
266
|
+
```
|
|
267
|
+
리스트 조회하고 순서 변경할 수 있게 해줘
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
#### Type 7 (마스터-디테일 + 모달 + 삭제 + 엑셀) - B2B, Order
|
|
271
|
+
```
|
|
272
|
+
왼쪽에 리스트, 오른쪽에 상세, 모달로 등록하고 삭제도 하고 엑셀 다운로드도 해줘
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
#### Type 9 (마스터-디테일 + 모달 + 상세조회 API) - Benefit, Member
|
|
276
|
+
```
|
|
277
|
+
왼쪽에 리스트, 오른쪽에 상세, 선택하면 상세조회 API 호출하고 저장도 해줘
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
#### Type 10 (마스터-디테일 + 엑셀 다운로드) - Order, Product
|
|
281
|
+
```
|
|
282
|
+
리스트 조회하고 엑셀 다운로드 해줘
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
#### Multi-List (다중 리스트 통합) - Member
|
|
286
|
+
```
|
|
287
|
+
요약 데이터와 왼쪽 목록, 오른쪽 목록을 통합해서 보여줘
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
---
|
|
291
|
+
|
|
292
|
+
## 사용되지 않는 Type
|
|
293
|
+
|
|
294
|
+
- **Type 2 (마스터-디테일 + 모달 + 삭제)**: NH 프로젝트에서 사용되지 않음
|
|
295
|
+
- **Type 8 (리스트 + 선택 + 엑셀 다운로드)**: NH 프로젝트에서 사용되지 않음
|
|
296
|
+
|
|
297
|
+
이 Type들은 템플릿에는 존재하지만, 실제 NH 프로젝트에서는 사용되지 않는 패턴입니다.
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
# MCP-AXBoot 문서 인덱스
|
|
2
|
+
|
|
3
|
+
> MCP-AXBoot의 모든 문서를 쉽게 찾아볼 수 있는 인덱스입니다.
|
|
4
|
+
|
|
5
|
+
## 빠른 링크
|
|
6
|
+
|
|
7
|
+
### 🚀 시작하기
|
|
8
|
+
- [빠른 시작 가이드](./quick-start.md) - 5분 만에 MCP-AXBoot 사용법 배우기
|
|
9
|
+
|
|
10
|
+
### 📖 사용 가이드
|
|
11
|
+
- [요구사항 분석 가이드](./requirements-analysis-guide.md) - 자연어 요구사항 분석 방법
|
|
12
|
+
- [타입 선택 가이드](./type-selection-guide.md) - 올바른 Store 타입 선택하기
|
|
13
|
+
- [Store 패턴 사용 가이드](./store-patterns-usage-guide.md) - Store 패턴별 상세 가이드
|
|
14
|
+
|
|
15
|
+
### 📚 레퍼런스
|
|
16
|
+
- [Store 패턴 분석](./store-pattern-analysis.md) - NH-FE-B Store 패턴 분석
|
|
17
|
+
- [Store 패턴 규칙](./store-patterns-rules.md) - Store 생성 규칙과 제약 조건
|
|
18
|
+
|
|
19
|
+
### 💡 실전 가이드
|
|
20
|
+
- [실전 예제 모음](./practical-examples.md) - 실제 프로젝트 예제 모음
|
|
21
|
+
- [문제 해결 가이드](./troubleshooting.md) - 흔한 문제와 해결 방법
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## 문서별 상세 설명
|
|
26
|
+
|
|
27
|
+
### 빠른 시작 가이드 (quick-start.md)
|
|
28
|
+
|
|
29
|
+
**대상**: MCP-AXBoot를 처음 사용하는 분
|
|
30
|
+
**내용**:
|
|
31
|
+
- 설치 및 설정 방법
|
|
32
|
+
- 기본 사용법
|
|
33
|
+
- 5분 만에 Store 만들기
|
|
34
|
+
- 자주 묻는 질문
|
|
35
|
+
|
|
36
|
+
**필독 시점**: MCP-AXBoot 설치 직후
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
### 요구사항 분석 가이드 (requirements-analysis-guide.md)
|
|
41
|
+
|
|
42
|
+
**대상**: 자연어 요구사항으로 Store를 생성하려는 분
|
|
43
|
+
**내용**:
|
|
44
|
+
- 분석 원리와 키워드 매칭
|
|
45
|
+
- 효과적인 요구사항 작성법
|
|
46
|
+
- 시나리오별 예제
|
|
47
|
+
- 분석 결과 해석 방법
|
|
48
|
+
|
|
49
|
+
**필독 시점**: 자연어 요구사항으로 Store 생성 전
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
### 타입 선택 가이드 (type-selection-guide.md)
|
|
54
|
+
|
|
55
|
+
**대상**: 어떤 Store 타입을 선택할지 고민인 분
|
|
56
|
+
**내용**:
|
|
57
|
+
- 타입 선택 결정 트리
|
|
58
|
+
- 10가지 타입별 상세 비교
|
|
59
|
+
- 선택 시 고려사항
|
|
60
|
+
- 타입 변환 가이드
|
|
61
|
+
|
|
62
|
+
**필독 시점**: Store 생성 전 타입 결정 시
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
### Store 패턴 사용 가이드 (store-patterns-usage-guide.md)
|
|
67
|
+
|
|
68
|
+
**대상**: 생성된 Store를 수정하고 싶은 분
|
|
69
|
+
**내용**:
|
|
70
|
+
- 12가지 Store 타입별 패턴
|
|
71
|
+
- MetaData 필드 조합표
|
|
72
|
+
- States 필드별 초기값 패턴
|
|
73
|
+
- createActions 패턴별 구현
|
|
74
|
+
- Store.subscribe 패턴별 구현
|
|
75
|
+
- MCP-AXBoot 사용 후 수정 가이드
|
|
76
|
+
|
|
77
|
+
**필독 시점**: Store 생성 후 수정 시
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
### Store 패턴 분석 (store-pattern-analysis.md)
|
|
82
|
+
|
|
83
|
+
**대상**: NH-FE-B Store 패턴을 이해하고 싶은 분
|
|
84
|
+
**내용**:
|
|
85
|
+
- 전체 파일 구조
|
|
86
|
+
- createActions 패턴 상세 분석
|
|
87
|
+
- Store.subscribe 패턴 상세 분석
|
|
88
|
+
- 필드별 초기값 패턴
|
|
89
|
+
|
|
90
|
+
**필독 시점**: Store 구조를 깊이 이해하고 싶을 때
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
### Store 패턴 규칙 (store-patterns-rules.md)
|
|
95
|
+
|
|
96
|
+
**대상**: Store 생성 시 준수해야 할 규칙을 알고 싶은 분
|
|
97
|
+
**내용**:
|
|
98
|
+
- 필수 규칙
|
|
99
|
+
- MetaData/States/Actions 제약 조건
|
|
100
|
+
- 네이밍 규칙
|
|
101
|
+
- 타입 제약 조건
|
|
102
|
+
- 필드 조합 규칙
|
|
103
|
+
- 금지 패턴
|
|
104
|
+
|
|
105
|
+
**필독 시점**: Store 직접 작성 시 또는 품질 검토 시
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
### 실전 예제 모음 (practical-examples.md)
|
|
110
|
+
|
|
111
|
+
**대상**: 실제 프로젝트 예제를 참고하고 싶은 분
|
|
112
|
+
**내용**:
|
|
113
|
+
- 예제 1: 회원 관리 (CRUD)
|
|
114
|
+
- 예제 2: 상품 카테고리 (트리)
|
|
115
|
+
- 예제 3: 주문 관리 (마스터-디테일)
|
|
116
|
+
- 예제 4: 대시보드 (다중 데이터)
|
|
117
|
+
- 예제 5: 배치 처리 (체크박스)
|
|
118
|
+
- 예제 6: 게시판 (고정값)
|
|
119
|
+
|
|
120
|
+
**필독 시점**: 유사한 기능을 구현할 때
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
### 문제 해결 가이드 (troubleshooting.md)
|
|
125
|
+
|
|
126
|
+
**대상**: 문제가 발생하여 해결 방법을 찾는 분
|
|
127
|
+
**내용**:
|
|
128
|
+
- 빌드/설치 문제
|
|
129
|
+
- Store 생성 문제
|
|
130
|
+
- 타입 오류
|
|
131
|
+
- 런타임 오류
|
|
132
|
+
- 품질 개선 팁
|
|
133
|
+
- 디버깅 팁
|
|
134
|
+
|
|
135
|
+
**필독 시점**: 에러 발생 시 또는 문제 예방 목적
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## 사용 시나리오별 추천 문서
|
|
140
|
+
|
|
141
|
+
### 시나리오 1: "처음 사용해봐"
|
|
142
|
+
|
|
143
|
+
1. [빠른 시작 가이드](./quick-start.md) - 설치부터 기본 사용까지
|
|
144
|
+
|
|
145
|
+
### 시나리오 2: "요구사항으로 Store 만들어봐"
|
|
146
|
+
|
|
147
|
+
1. [요구사항 분석 가이드](./requirements-analysis-guide.md) - 요구사항 작성법
|
|
148
|
+
2. [타입 선택 가이드](./type-selection-guide.md) - 타입 결정
|
|
149
|
+
|
|
150
|
+
### 시나리오 3: "생성된 Store를 수정하고 싶어"
|
|
151
|
+
|
|
152
|
+
1. [Store 패턴 사용 가이드](./store-patterns-usage-guide.md) - 수정 방법
|
|
153
|
+
2. [Store 패턴 규칙](./store-patterns-rules.md) - 준수 사항 확인
|
|
154
|
+
|
|
155
|
+
### 시나리오 4: "비슷한 예제가 있나?"
|
|
156
|
+
|
|
157
|
+
1. [실전 예제 모음](./practical-examples.md) - 시나리오별 예제 참조
|
|
158
|
+
|
|
159
|
+
### 시나리오 5: "에러가 발생했어"
|
|
160
|
+
|
|
161
|
+
1. [문제 해결 가이드](./troubleshooting.md) - 해결 방법 찾기
|
|
162
|
+
|
|
163
|
+
### 시나리오 6: "Store 구조를 깊이 이해하고 싶어"
|
|
164
|
+
|
|
165
|
+
1. [Store 패턴 분석](./store-pattern-analysis.md) - 패턴 분석
|
|
166
|
+
2. [Store 패턴 규칙](./store-patterns-rules.md) - 규칙 학습
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
## 문서 간 관계도
|
|
171
|
+
|
|
172
|
+
```
|
|
173
|
+
시작
|
|
174
|
+
↓
|
|
175
|
+
[quick-start.md]
|
|
176
|
+
↓
|
|
177
|
+
요구사항 작성
|
|
178
|
+
↓
|
|
179
|
+
[requirements-analysis-guide.md] ← [type-selection-guide.md]
|
|
180
|
+
↓ ↓
|
|
181
|
+
Store 생성 ←→ [store-patterns-rules.md]
|
|
182
|
+
↓
|
|
183
|
+
[store-patterns-usage-guide.md]
|
|
184
|
+
↓
|
|
185
|
+
문제 발생 시 → [troubleshooting.md]
|
|
186
|
+
↓
|
|
187
|
+
[practical-examples.md] (참고용)
|
|
188
|
+
|
|
189
|
+
[store-pattern-analysis.md] (이해를 돕는 레퍼런스)
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## 주요 키워드별 문서 맵핑
|
|
195
|
+
|
|
196
|
+
| 키워드 | 관련 문서 |
|
|
197
|
+
|-------|---------|
|
|
198
|
+
| 설치 | quick-start |
|
|
199
|
+
| 분석 | requirements-analysis-guide |
|
|
200
|
+
| 타입 | type-selection-guide |
|
|
201
|
+
| 수정 | store-patterns-usage-guide |
|
|
202
|
+
| 규칙 | store-patterns-rules |
|
|
203
|
+
| 예제 | practical-examples |
|
|
204
|
+
| 에러 | troubleshooting |
|
|
205
|
+
| 패턴 | store-pattern-analysis |
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## 업데이트 내역
|
|
210
|
+
|
|
211
|
+
문서는 프로젝트가 업데이트됨에 따라 함께 업데이트됩니다. 최신 문서를 확인하세요.
|
|
212
|
+
|
|
213
|
+
**최근 업데이트**: 2025-01-12
|
|
214
|
+
- docs 폴더 문서 추가
|
|
215
|
+
- JSON 패턴 파일 구조화
|
|
216
|
+
- 다양한 사용 가이드 추가
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export {
|
|
2
|
+
loadDocs,
|
|
3
|
+
getStoreTypeInfo,
|
|
4
|
+
getFieldCombinations,
|
|
5
|
+
getInitialValues,
|
|
6
|
+
getStoreTypeFields,
|
|
7
|
+
getMetadataFields,
|
|
8
|
+
getStatesFields,
|
|
9
|
+
getActions,
|
|
10
|
+
getSubscribeSelector,
|
|
11
|
+
getAllFields,
|
|
12
|
+
getValidationRules,
|
|
13
|
+
getForbiddenPatterns,
|
|
14
|
+
getChecklist,
|
|
15
|
+
getRequiredImports,
|
|
16
|
+
getNamingRules,
|
|
17
|
+
getImplementationRules,
|
|
18
|
+
getFieldOrder,
|
|
19
|
+
getDependencies,
|
|
20
|
+
suggestStoreType,
|
|
21
|
+
getCachedDocs,
|
|
22
|
+
isComplexRequest,
|
|
23
|
+
getComplexRequestContext,
|
|
24
|
+
getSimpleRequestContext,
|
|
25
|
+
getContextualDocumentation,
|
|
26
|
+
type DocsContent,
|
|
27
|
+
type LoadedDocs
|
|
28
|
+
} from './loader.js';
|