UNPKG

@livelike/react-native

Version:

LiveLike React Native package

80 lines 2.59 kB
import React from 'react'; import { LLWidgetHeader } from '../LLWidgetHeader'; import { LLWidgetFooter } from '../LLWidgetFooter'; import { useWidgetInteractiveTimeout, useWidgetExpiryEffect, usePredictionWidgetEffect } from '../../hooks'; import { LLCoreWidget } from '../LLCoreWidget'; import { LLVoteWidgetBody } from '../LLVoteWidgetBody'; import { LLPredictionFollowUpWidget } from './LLPredictionFollowUpWidget'; import { LLPredictionWidgetActionInfo } from './LLPredictionWidgetActionInfo'; export function LLPredictionWidget(_ref) { let { programId, widgetId, widgetKind, inlineFollowUp, onDismiss: onDismissProp, interactiveTimeout: interactiveTimeoutProp, onInteractiveTimeout: onInteractiveTimeoutProp, WidgetComponent = LLCoreWidget, HeaderComponent = LLWidgetHeader, BodyComponent = LLVoteWidgetBody, FooterComponent = LLWidgetFooter, WidgetComponentStyles, HeaderComponentStyles, BodyComponentStyles, FooterComponentStyles } = _ref; const { interactiveTimeout, onInteractiveTimeout } = useWidgetInteractiveTimeout({ widgetId, interactiveTimeout: interactiveTimeoutProp, onInteractiveTimeout: onInteractiveTimeoutProp }); useWidgetExpiryEffect({ widgetId }); const { followUpWidget } = usePredictionWidgetEffect({ widgetId, programId, inlineFollowUp }); if (followUpWidget && inlineFollowUp) { return /*#__PURE__*/React.createElement(LLPredictionFollowUpWidget, { widgetId: followUpWidget.id, widgetKind: followUpWidget.kind, programId: programId }); } return /*#__PURE__*/React.createElement(WidgetComponent, { widgetId: widgetId, widgetKind: widgetKind, programId: programId, onDismiss: onDismissProp, styles: WidgetComponentStyles }, _ref2 => { let { widget, onDismiss } = _ref2; return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(HeaderComponent, { title: widget.question, interactiveTimeout: interactiveTimeout, onInteractiveTimeout: onInteractiveTimeout, onDismiss: onDismiss, dismissable: !!onDismissProp, styles: HeaderComponentStyles }), /*#__PURE__*/React.createElement(BodyComponent, { widgetId: widgetId, styles: BodyComponentStyles }), /*#__PURE__*/React.createElement(FooterComponent, { styles: FooterComponentStyles, widgetId: widgetId, ActionInfoComponent: LLPredictionWidgetActionInfo })); }); } //# sourceMappingURL=LLPredictionWidget.js.map