Seen
Make component "permanently" dismissible
Basic usage
Demonstrates the essential props: id, render, and children.
Inline usage
Use Seen to wrap any UI that should only be shown until the user dismisses it. Provide a stable id and a render function that gets dismiss and isDismissed.
Resetting dismissal state
Shows how to use resetDismissedState function to clear dismissal state.
Use resetDismissedState to clear a specific key or all Seen states. This is useful for demos, QA, or when you want to re-show a message after product changes.
import { resetDismissedState } from '@ntds/seen';
// Reset one
resetDismissedState('welcome-banner');
// Or reset all Seen states
resetDismissedState();
Gotchas
- Ensure the
idis unique and stable across renders; it is used as the storage key. - Dismissal is persisted in
localStorageunder a namespaced key. renderreceives{ dismiss, children, isDismissed }; you decide when to calldismiss().