@livelike/react-native
Version:
LiveLike React Native package
34 lines • 1.07 kB
JavaScript
import { useCallback } from 'react';
import { useTimelineWidgets } from './useTimelineWidgets';
import { timelineWidgetStoreActions } from '../store';
export function useTimelineWidgetActions(_ref) {
let {
programId
} = _ref;
const widgets = useTimelineWidgets({
programId
});
const onWidgetInteractiveTimeout = useCallback(timedOutWidgetId => {
if (!(widgets !== null && widgets !== void 0 && widgets.length)) {
return;
}
const updatedWidgets = widgets.filter(_ref2 => {
let {
widgetId
} = _ref2;
return widgetId !== timedOutWidgetId;
});
timelineWidgetStoreActions.updateTimelineWidgetStateAction({
programId,
widgetTimelineState: {
widgets: updatedWidgets
}
});
}, [widgets]);
return {
onWidgetInteractiveTimeout,
updateTimelineWidgetStateAction: timelineWidgetStoreActions.updateTimelineWidgetStateAction,
updateTimelineWidgetsAction: timelineWidgetStoreActions.updateTimelineWidgetsAction
};
}
//# sourceMappingURL=useTimelineWidgetActions.js.map