UNPKG

@livelike/react-native

Version:

LiveLike React Native package

58 lines 1.65 kB
import React from 'react'; import { StyleSheet, View } from 'react-native'; import { useLoadWidgetRewardsEffect, useStyles, useWidgetRewards, useWidgetRewardsEffect } from '../../hooks'; import { LLWidgetReward } from './LLWidgetReward'; export function LLWidgetRewards(_ref) { let { widgetId, RewardComponent = LLWidgetReward, RewardComponentStyles, styles: stylesProp } = _ref; const rewardStyles = useStyles({ componentStylesFn: getWidgetRewardsStyles, stylesProp }); const widgetRewards = useWidgetRewards({ widgetId }); const { slideInOutStyles } = useWidgetRewardsEffect({ widgetId }); useLoadWidgetRewardsEffect({ widgetId }); if (!(widgetRewards !== null && widgetRewards !== void 0 && widgetRewards.length)) { return undefined; } return /*#__PURE__*/React.createElement(View, { style: rewardStyles.container }, widgetRewards === null || widgetRewards === void 0 ? void 0 : widgetRewards.map((widgetReward, index) => /*#__PURE__*/React.createElement(RewardComponent, { key: widgetReward.reward_item_id, multipleReward: widgetRewards.length > 1, widgetReward: widgetReward, slideInOutStyle: slideInOutStyles[index], widgetId: widgetId, styles: RewardComponentStyles }))); } const getWidgetRewardsStyles = _ref2 => { let { theme } = _ref2; return StyleSheet.create({ container: { display: 'flex', flex: 1, alignSelf: 'center', height: 22, overflow: 'hidden', flexDirection: 'column', marginBottom: 16, marginLeft: 16 } }); }; //# sourceMappingURL=LLWidgetRewards.js.map