@@ -24,7 +24,7 @@ export type RecommendationScreen =
2424 | 'deck'
2525 | 'news'
2626 | 'complete'
27- | 'revisit '
27+ | 'archive '
2828 | 'empty-candidates'
2929 | 'empty-signup'
3030 | 'empty-before-send' ;
@@ -168,21 +168,26 @@ export default function RecommendationFlowContent({
168168 dismissedCount = { dismissedCount }
169169 viewedCount = { viewedCount }
170170 nextLetterNotice = "내일 오전 7시 30분경, 다음 레터가 도착해요."
171- onViewSaved = { ( ) => navigate ( '/recommendations/revisit ' ) }
171+ onViewSaved = { ( ) => navigate ( '/recommendations/archive ' ) }
172172 onExplore = { ( ) => navigate ( '/explore' ) }
173173 />
174174 </ ScreenLayout >
175175 ) ;
176176 }
177177
178- if ( screen === 'revisit ' ) {
178+ if ( screen === 'archive ' ) {
179179 const displayIndex = Math . min ( cardIndex , Math . max ( filteredLetters . length - 1 , 0 ) ) ;
180180 const letter = filteredLetters [ displayIndex ] ;
181+ const contentKey = letter ?. id ?? `empty-${ activeStatus } ` ;
181182 return (
182183 < ScreenLayout >
183184 < RecommendationLetterCarousel
185+ key = { activeStatus }
186+ className = "gap-5"
184187 current = { filteredLetters . length === 0 ? 0 : displayIndex + 1 }
185188 total = { filteredLetters . length }
189+ contentKey = { contentKey }
190+ enableStackTransition
186191 onPrev = { ( ) => setCardIndex ( Math . max ( displayIndex - 1 , 0 ) ) }
187192 onNext = { ( ) => setCardIndex ( Math . min ( displayIndex + 1 , filteredLetters . length - 1 ) ) }
188193 prevDisabled = { displayIndex === 0 }
@@ -198,20 +203,22 @@ export default function RecommendationFlowContent({
198203 />
199204 }
200205 >
201- { letter ? (
202- < RecommendationLetterCard
203- { ...letter }
204- onExpand = { ( ) => navigate ( `/jobs/${ letter . id } ` ) }
205- onSave = { ( ) => setStatus ( letter . id , 'saved' ) }
206- onDismiss = { ( ) => setStatus ( letter . id , 'dismissed' ) }
207- />
208- ) : (
209- < div className = "flex w-full max-w-130 flex-col items-center gap-2 rounded-sm border border-gray-200 bg-white p-10 text-center" >
210- < p className = "text-body-large font-medium text-text-secondary" >
211- { EMPTY_MESSAGE [ activeStatus ] }
212- </ p >
213- </ div >
214- ) }
206+ < div key = { activeStatus } className = "page-content-enter" >
207+ { letter ? (
208+ < RecommendationLetterCard
209+ { ...letter }
210+ onExpand = { ( ) => navigate ( `/jobs/${ letter . id } ` ) }
211+ onSave = { ( ) => setStatus ( letter . id , 'saved' ) }
212+ onDismiss = { ( ) => setStatus ( letter . id , 'dismissed' ) }
213+ />
214+ ) : (
215+ < div className = "flex min-h-142 w-190 items-center justify-center rounded-md border border-gray-200 bg-white p-6 text-center" >
216+ < p className = "text-heading-small font-medium text-text-secondary" >
217+ { EMPTY_MESSAGE [ activeStatus ] }
218+ </ p >
219+ </ div >
220+ ) }
221+ </ div >
215222 </ RecommendationLetterCarousel >
216223 </ ScreenLayout >
217224 ) ;
@@ -262,10 +269,10 @@ export default function RecommendationFlowContent({
262269 description = { notice . description }
263270 footNote = { notice . footNote }
264271 >
265- < Button className = "w-[414px] " onClick = { handlePrimaryAction } >
272+ < Button className = "w-103.5 " onClick = { handlePrimaryAction } >
266273 { notice . primary }
267274 </ Button >
268- < Button className = "w-[414px] " variant = "outline" onClick = { ( ) => navigate ( '/explore' ) } >
275+ < Button className = "w-103.5 " variant = "outline" onClick = { ( ) => navigate ( '/explore' ) } >
269276 탐색 둘러보기
270277 </ Button >
271278 </ RecommendationNoticePanel >
0 commit comments