// Metro module 8742 (f8743). import { useCallback, useLayoutEffect, useMemo, useState, memo } from "react"; import { Pressable, ScrollView, View } from "react-native"; import { ShopCtaEnum } from "../CollectiblesShopConstants"; import { createStyles } from "../../../design/components/Styles/native/createStyles"; import Module712 from "../../../_bundle/Module712"; import CollectiblesItemMiniPreview from "./CollectiblesItemMiniPreview"; import { GestureDetector, Gesture } from "../../../_bundle/Module5273"; import { intl, t } from "../../../intl/index.native"; import { getCollectibleTypeLabel } from "../CollectiblesUtils"; import { IndividualProductPreview } from "./IndividualProductPreview"; import { Text } from "../../../design/components/Text/native/Text"; let Component2; const useStyles = createStyles({ previewContainer: { paddingTop: Module712.space.PX_16, paddingBottom: Module712.space.PX_16, gap: Module712.space.PX_16 }, bundleThumbnail: { width: 56, height: 56, borderRadius: Module712.radii.sm, backgroundColor: Module712.colors.BACKGROUND_MOD_SUBTLE, overflow: "hidden" }, selectedRing: { position: "absolute", top: -2, left: -2, right: -2, bottom: -2, borderRadius: Module712.radii.sm + 2, borderWidth: 2, borderColor: Module712.colors.BORDER_STRONG }, bundleThumbnailRow: { flexDirection: "row", gap: Module712.space.PX_12, paddingVertical: Module712.space.PX_4, paddingHorizontal: 2 }, bundleContainer: { paddingHorizontal: Module712.space.PX_16, gap: Module712.space.PX_16 }, bundleInfoContainer: { gap: Module712.space.PX_8 } }); let Component = memo(function(a0) { const { item, index } = a0; let isSelected = a0.isSelected; const { setSelected, label, trackedSkuId, onTrackPress } = a0; const callback = useCallback(() => { if (onTrackPress != null) { onTrackPress(ShopCtaEnum.BUNDLE_VIEW_PRODUCT, trackedSkuId); } setSelected(index); }, [setSelected, index, onTrackPress, trackedSkuId]); const styles = useStyles(); const props = { role: "radio", "aria-checked": isSelected, onPress: callback, "aria-label": label, children: null }; const children = [ , ,]; if (isSelected) { isSelected = ; } children[1] = isSelected; props.children = children; return ; }); Component2 = memo(function({ items, bundledProducts, activeIndex, onSelect, onTrackPress: onTrackPress2 }) { const styles = useStyles(); return Gesture.Native().disallowInterruption(true), [])}> {items.map((a0, a1) => { let label = bundledProducts == null ? void 0 : bundledProducts[a1]?.name; if (label == null) { label = a0.skuId; } let trackedSkuId2 = bundledProducts == null ? void 0 : bundledProducts[a1]?.skuId; if (trackedSkuId2 == null) { trackedSkuId2 = a0.skuId; } return ; })} ; }); export default function BundleProductDetailsActionSheetPreview(props) { const { product, width, handlePreviewPress, onTrackPress: onTrackPress3, onActiveItemChange } = props; const styles = useStyles(); let [activeIndex2, onSelect2] = useState(0); const [state, setState] = useState(product.skuId); const { items, bundledProducts: bundledProducts2 } = product; if (product.skuId !== state) { setState(product.skuId); onSelect2(0); activeIndex2 = 0; } const r43 = items[activeIndex2]; let c16761_1 = r43; useLayoutEffect(() => { if (onActiveItemChange != null) { onActiveItemChange(c16761_1); } }, [r43, onActiveItemChange]); let r16 = (bundledProducts2 == null ? void 0 : bundledProducts2[activeIndex2])?.name; if (r16 == null) { r16 = r43.skuId; } const collectibleTypeLabel = getCollectibleTypeLabel(r43.type); const r66 = [ ({ skuId: c16761_1.skuId, type: c16761_1.type, items: [c16761_1] }), [r43])} width={width} handlePreviewPress={handlePreviewPress} onTrackPress={onTrackPress3} />, ,]; r66[1] = {product.name} {intl.formatToPlainString(t["/0Yndu"], { num: items.length })} {r16} {collectibleTypeLabel != null && {` - ${collectibleTypeLabel}`} } ; return {r66}; };