feat(inbox): RecoveryToast for ≥7-day gap reentry

Task 28 of the slice plan. Renders the green '🌱 흐름을 다시
이어갑니다' banner only when the parent says show=true
(continuity.showRecoveryToast && !dismissedToday). Click ✕
calls onDismiss which persists today's date in localStorage
via recoveryToast.ts, suppressing it for the rest of the KST
day even after a reload.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
altair823
2026-04-25 12:17:53 +09:00
parent 7cdc1e1104
commit 90301a5804

View File

@@ -1,2 +1,16 @@
import React from 'react';
export function RecoveryToast(_: { show: boolean; onDismiss: () => void }) { return null; }
interface Props {
show: boolean;
onDismiss: () => void;
}
export function RecoveryToast({ show, onDismiss }: Props): React.ReactElement | null {
if (!show) return null;
return (
<div className="banner recovery">
<span>🌱 </span>
<button onClick={onDismiss} aria-label="닫기"></button>
</div>
);
}