@livelike/react-native
Version:
LiveLike React Native package
23 lines (19 loc) • 572 B
text/typescript
import { useCallback, useState } from 'react';
import { useAnalytics } from './useAnalytics';
export type UseWidgetDismissArg = {
widgetId: string;
onDismiss?: () => void;
};
export function useWidgetDismiss({ widgetId, onDismiss }: UseWidgetDismissArg) {
const [dismiss, setDismiss] = useState(false);
const { trackEvent } = useAnalytics();
const onDismissHandler = useCallback(() => {
onDismiss?.();
trackEvent('Widget Dismissed', { widgetId });
setDismiss(true);
}, [dismiss, onDismiss]);
return {
dismiss,
onDismissHandler,
};
}