461 lines
18 KiB
TypeScript
461 lines
18 KiB
TypeScript
// Module ID: 10164
|
|
// Function ID: 10165
|
|
// Name: RewardPreview
|
|
// Dependencies: [19, 17, 8839, 7054, 1947, 1922, 7388, 676, 21, 4342, 712, 5409, 9440, 1946, 1297, 4338, 1236, 4766, 10165, 1499, 9660, 589, 7466, 7692, 7406, 10089, 9627, 8835, 7419, 10079, 10160, 10087, 5308, 7796, 9721, 10094, 5788, 1993, 4755, 4205, 2]
|
|
// Exports: default
|
|
|
|
// Module 10164 (RewardPreview)
|
|
import useNavigation from "useNavigation";
|
|
import get_ActivityIndicator from "LinearGradient";
|
|
import map from "map";
|
|
import { isAvatarDecorationRecord } from "fromServer";
|
|
import { isNameplateRecord } from "fromServer";
|
|
import mergeGuildAvatar from "mergeGuildAvatar";
|
|
import createEmptyPromotionsByType from "createEmptyPromotionsByType";
|
|
import { HelpdeskArticles } from "ME";
|
|
import jsxProd from "initialize";
|
|
import createCacheKey from "createCacheKey";
|
|
|
|
let c4;
|
|
let c5;
|
|
let closure_12;
|
|
let closure_14;
|
|
let map1;
|
|
const require = arg1;
|
|
function RewardPreview(arg0) {
|
|
let collectiblesItem;
|
|
let currentUser;
|
|
let gradientAngle;
|
|
let gradientColors;
|
|
({ collectiblesItem, gradientAngle } = arg0);
|
|
({ currentUser, gradientColors } = arg0);
|
|
const tmp3 = callback3(importDefault(5409)().insets.bottom);
|
|
if (isNameplateRecord(collectiblesItem)) {
|
|
let obj = { children: null };
|
|
obj = { style: null, children: null };
|
|
obj[0] = tmp3.nameplateWrapper;
|
|
const obj1 = { nameplate: null, fullOpacity: true, animate: true };
|
|
let tmpResult = tmp(9440);
|
|
let obj8 = require(1946) /* getNameplateData */;
|
|
obj1[0] = obj8.getNameplateData(collectiblesItem);
|
|
obj[1] = callback(tmpResult, obj1);
|
|
const items = [callback(closure_5, obj), , ];
|
|
const obj2 = { style: null, children: null };
|
|
obj2[0] = tmp3.singleAvatarContainer;
|
|
const obj3 = { user: null, guildId: "Array", size: true, "aria-hidden": null };
|
|
obj3[0] = currentUser;
|
|
obj3[2] = require(1297) /* Button */.AvatarSizes.SMALL;
|
|
obj2[1] = callback(require(1297) /* Button */.Avatar, obj3);
|
|
items[1] = callback(closure_5, obj2);
|
|
const obj4 = { style: null, variant: "text-xs/medium", children: null };
|
|
obj4[0] = tmp3.selectedRewardText;
|
|
const intl2 = require(1236) /* getSystemLocale */.intl;
|
|
obj4[2] = intl2.string(require(1236) /* getSystemLocale */.t.Rh4oem);
|
|
items[2] = callback(require(4338) /* Text */.Text, obj4);
|
|
obj[0] = items;
|
|
let tmp7Result = callback2(closure_13, obj);
|
|
} else {
|
|
tmp7Result = null;
|
|
if (isAvatarDecorationRecord(collectiblesItem)) {
|
|
obj = { style: null, useAngle: true, angle: null, angleCenter: null, colors: null };
|
|
obj[0] = tmp3.selectedRewardBannerGradient;
|
|
tmpResult = tmp(4766);
|
|
if (gradientAngle == null) {
|
|
gradientAngle = 90;
|
|
}
|
|
const obj5 = { children: null };
|
|
obj[2] = gradientAngle;
|
|
obj[3] = { x: 0.5, y: 0.5 };
|
|
obj[4] = gradientColors;
|
|
const items1 = [callback(tmpResult, obj), , ];
|
|
const obj6 = { style: null, children: null };
|
|
obj6[0] = tmp3.singleAvatarContainer;
|
|
const obj7 = { size: null, asset: null };
|
|
obj7[0] = require(1297) /* Button */.AvatarSizes.NORMAL;
|
|
obj7[1] = collectiblesItem.asset;
|
|
obj6[1] = callback(tmp(10165), obj7);
|
|
items1[1] = callback(closure_5, obj6);
|
|
obj8 = { style: null, variant: "text-xs/medium", color: "text-overlay-light", children: null };
|
|
obj8[0] = tmp3.selectedRewardText;
|
|
const intl = require(1236) /* getSystemLocale */.intl;
|
|
obj8[3] = intl.string(require(1236) /* getSystemLocale */.t.Rh4oem);
|
|
items1[2] = callback(require(4338) /* Text */.Text, obj8);
|
|
obj5[0] = items1;
|
|
tmp7Result = callback2(closure_13, obj5);
|
|
const tmp7 = callback2;
|
|
const tmp8 = closure_13;
|
|
const tmpResult1 = tmp(10165);
|
|
}
|
|
}
|
|
return tmp7Result;
|
|
}
|
|
({ StyleSheet: c4, View: c5 } = get_ActivityIndicator);
|
|
({ jsx: closure_12, Fragment: map1, jsxs: closure_14 } = jsxProd);
|
|
let closure_15 = createCacheKey.createStyles((arg0) => {
|
|
let obj = { container: null, chooseRewardContainer: null, gradientBackdrop: null, chooseRewardText: null, backgroundImage: null, inAppFlowImage: null, inAppFlowImageLargeTilted: null, singleAvatarContainer: null, selectedRewardRow: null, selectedRewardBannerContainer: null, selectedRewardBannerGradient: null, selectedRewardText: null, nameplateWrapper: null };
|
|
obj = { backgroundColor: importDefault(712).colors.BACKGROUND_BASE_LOW, paddingTop: importDefault(712).space.PX_12, paddingBottom: importDefault(712).space.PX_12 + arg0, paddingHorizontal: importDefault(712).space.PX_16, gap: importDefault(712).space.PX_8 };
|
|
const merged = Object.assign(importDefault(712).shadows.SHADOW_TOP_HIGH);
|
|
obj[0] = obj;
|
|
obj[1] = { flexDirection: "row", alignItems: "center", height: 52 };
|
|
obj = {};
|
|
const merged1 = Object.assign(closure_4.absoluteFillObject);
|
|
obj.borderRadius = importDefault(712).radii.sm;
|
|
obj.overflow = "hidden";
|
|
obj[2] = obj;
|
|
obj[3] = { flex: 1, marginStart: importDefault(712).space.PX_8 };
|
|
obj[4] = { position: "absolute", top: 0, left: 0, right: 0, bottom: 0, opacity: 1 };
|
|
const obj1 = { flex: 1, marginStart: importDefault(712).space.PX_8 };
|
|
obj[5] = { width: 58, height: 58, marginStart: importDefault(712).space.PX_8 };
|
|
const items = [{ rotate: "-4deg" }, { translateY: -11 }];
|
|
obj[6] = { width: 86, height: 86, transform: items };
|
|
obj[7] = { flexDirection: "row", paddingRight: 15, justifyContent: "center", alignItems: "center", marginLeft: 5 };
|
|
const obj2 = { width: 58, height: 58, marginStart: importDefault(712).space.PX_8 };
|
|
obj[8] = { flexDirection: "row", alignItems: "center", gap: importDefault(712).space.PX_16 };
|
|
obj[9] = { flex: 1, flexDirection: "row", alignItems: "center", height: 52 };
|
|
const obj4 = {};
|
|
const merged2 = Object.assign(closure_4.absoluteFillObject);
|
|
obj4.borderRadius = importDefault(712).radii.sm;
|
|
obj4.top = importDefault(712).space.PX_4;
|
|
obj4.bottom = importDefault(712).space.PX_4;
|
|
obj4.start = importDefault(712).space.PX_4;
|
|
obj4.end = importDefault(712).space.PX_4;
|
|
obj4.marginStart = importDefault(712).space.PX_12;
|
|
obj[10] = obj4;
|
|
obj[11] = { flex: 1 };
|
|
const obj3 = { flexDirection: "row", alignItems: "center", gap: importDefault(712).space.PX_16 };
|
|
obj[12] = { position: "absolute", left: 0, right: 0, top: 0, bottom: 0, borderRadius: importDefault(712).radii.sm, overflow: "hidden" };
|
|
return obj;
|
|
});
|
|
const result = require("map").fileFinishedImporting("modules/premium/native/gifting/PremiumGiftPurchaseButton.tsx");
|
|
|
|
export default function PremiumGiftPurchaseButton(defaultSelection) {
|
|
let c2;
|
|
let c3;
|
|
let c7;
|
|
let claimableRewards;
|
|
let isPurchasing;
|
|
let productId;
|
|
defaultSelection = defaultSelection.defaultSelection;
|
|
let importDefault;
|
|
let dependencyMap;
|
|
let React;
|
|
claimableRewards = undefined;
|
|
let selectedGiftingPromotionReward;
|
|
let setSelectedGiftingPromotionReward;
|
|
c7 = undefined;
|
|
let c8;
|
|
let c9;
|
|
let c10;
|
|
let tmp3 = callback3(importDefault(5409)().insets.bottom);
|
|
let obj = defaultSelection(1499);
|
|
importDefault = obj.useNavigation();
|
|
let obj1 = defaultSelection(9660);
|
|
const nativeGiftContext = obj1.useNativeGiftContext();
|
|
({ onPurchase: c2, isPurchasing, allRewards: c3, claimableRewards } = nativeGiftContext);
|
|
selectedGiftingPromotionReward = nativeGiftContext.selectedGiftingPromotionReward;
|
|
setSelectedGiftingPromotionReward = nativeGiftContext.setSelectedGiftingPromotionReward;
|
|
({ setCurrentAnalyticsStep: c7, productId } = nativeGiftContext);
|
|
let obj2 = defaultSelection(589);
|
|
let items = [c9];
|
|
const stateFromStores = obj2.useStateFromStores(items, () => _undefined3.getCurrentUser());
|
|
let obj3 = defaultSelection(7466);
|
|
const canPurchaseIAP = obj3.useCanPurchaseIAP(productId);
|
|
let obj4 = defaultSelection(589);
|
|
let items1 = [c10];
|
|
const stateFromStores1 = obj4.useStateFromStores(items1, () => {
|
|
const marketingComponentByType = _undefined4.getMarketingComponentByType(defaultSelection(_undefined[23]).MarketingComponentType.GIFT_CUSTOMIZATION_BANNER);
|
|
let prop = null;
|
|
if (null != marketingComponentByType) {
|
|
prop = null;
|
|
if ("giftCustomizationBanner" === marketingComponentByType.properties.properties.oneofKind) {
|
|
prop = marketingComponentByType.properties.properties.giftCustomizationBanner;
|
|
}
|
|
}
|
|
return prop;
|
|
});
|
|
if (stateFromStores1 != null) {
|
|
const assetVariant = stateFromStores1.assetVariant;
|
|
}
|
|
let tmp9 = null != claimableRewards;
|
|
if (tmp9) {
|
|
tmp9 = claimableRewards.length > 0;
|
|
}
|
|
c8 = tmp9;
|
|
let tmp10 = null != claimableRewards;
|
|
if (tmp10) {
|
|
tmp10 = 1 === claimableRewards.length;
|
|
}
|
|
c9 = tmp10;
|
|
const tmp11 = importDefault(10089)();
|
|
let tmp12 = tmp11;
|
|
if (tmp11) {
|
|
tmp12 = null == selectedGiftingPromotionReward;
|
|
}
|
|
c10 = tmp12;
|
|
const GiftingBadgeExperiment = tmp4(9627).GiftingBadgeExperiment;
|
|
let tmp4Result = tmp4(589);
|
|
const items2 = [setSelectedGiftingPromotionReward];
|
|
const stateFromStoresObject = tmp4Result.useStateFromStoresObject(items2, () => {
|
|
let getNextTier;
|
|
let getRemainingToNextTier;
|
|
({ getNextTier, getRemainingToNextTier } = setSelectedGiftingPromotionReward);
|
|
return { nextTier: getNextTier(defaultSelection(_undefined[27]).BadgeId.GIFTING), giftsToNextTier: getRemainingToNextTier(defaultSelection(_undefined[27]).BadgeId.GIFTING) };
|
|
});
|
|
const nextTier = stateFromStoresObject.nextTier;
|
|
const items3 = [tmp10, claimableRewards, setSelectedGiftingPromotionReward];
|
|
const effect = React.useEffect(() => {
|
|
if (c9) {
|
|
setSelectedGiftingPromotionReward(claimableRewards[0]);
|
|
}
|
|
}, items3);
|
|
let colors;
|
|
if (stateFromStores1 != null) {
|
|
const gradient = stateFromStores1.gradient;
|
|
if (gradient != null) {
|
|
colors = gradient.colors;
|
|
}
|
|
}
|
|
if (colors == null) {
|
|
colors = [];
|
|
}
|
|
let tmp15 = colors;
|
|
if (colors.length <= 0) {
|
|
const _String = String;
|
|
const items4 = [String(tmp(712).colors.BACKGROUND_BRAND), ];
|
|
const _String2 = String;
|
|
items4[1] = String(tmp(712).colors.BACKGROUND_BRAND);
|
|
tmp15 = items4;
|
|
}
|
|
tmp4Result = tmp4(10160);
|
|
const product = tmp4Result.useFetchCollectiblesProduct(selectedGiftingPromotionReward).product;
|
|
const intl = tmp4(1236).intl;
|
|
const string = intl.string;
|
|
const t = tmp4(1236).t;
|
|
if (tmp12) {
|
|
let stringResult = string(t["gNZY/B"]);
|
|
} else {
|
|
stringResult = string(t.ouo4FK);
|
|
}
|
|
let str = "active";
|
|
if (tmp12) {
|
|
str = "primary";
|
|
}
|
|
let prop;
|
|
if (stateFromStores1 != null) {
|
|
prop = stateFromStores1.mobileBackgroundAsset;
|
|
}
|
|
const themeAndReducedMotionAwareAssetUrl = defaultSelection(10087).useThemeAndReducedMotionAwareAssetUrl(prop);
|
|
const tmp4Result1 = defaultSelection(10087);
|
|
let asset;
|
|
if (stateFromStores1 != null) {
|
|
asset = stateFromStores1.asset;
|
|
}
|
|
const themeAndReducedMotionAwareAssetUrl1 = defaultSelection(10087).useThemeAndReducedMotionAwareAssetUrl(asset);
|
|
let first;
|
|
if (product != null) {
|
|
first = product.items[0];
|
|
}
|
|
obj = { style: tmp3.container, children: null };
|
|
if (tmp12) {
|
|
if (tmp9) {
|
|
obj = { style: null, children: null };
|
|
obj[0] = tmp3.chooseRewardContainer;
|
|
obj1 = { style: null, pointerEvents: "none", children: null };
|
|
obj1[0] = tmp3.gradientBackdrop;
|
|
obj2 = { style: null, useAngle: true, angle: null, angleCenter: null, colors: null };
|
|
obj2[0] = claimableRewards.absoluteFillObject;
|
|
let num3;
|
|
let tmpResult = tmp(4766);
|
|
if (stateFromStores1 != null) {
|
|
const gradient3 = stateFromStores1.gradient;
|
|
if (gradient3 != null) {
|
|
num3 = gradient3.angle;
|
|
}
|
|
}
|
|
if (num3 == null) {
|
|
num3 = 90;
|
|
}
|
|
obj2[2] = num3;
|
|
obj2[3] = { x: 0.5, y: 0.5 };
|
|
obj2[4] = colors;
|
|
const items5 = [callback(tmpResult, obj2), ];
|
|
let tmp32Result = null != themeAndReducedMotionAwareAssetUrl;
|
|
if (tmp32Result) {
|
|
obj3 = { style: null, resizeMode: "cover", source: null };
|
|
obj3[0] = tmp3.backgroundImage;
|
|
obj4 = { uri: null };
|
|
obj4[0] = themeAndReducedMotionAwareAssetUrl;
|
|
obj3[2] = obj4;
|
|
tmp32Result = tmp32(tmp(5308), obj3);
|
|
}
|
|
items5[1] = tmp32Result;
|
|
obj1[2] = items5;
|
|
const items6 = [tmp23(tmp24, obj1), , ];
|
|
tmp32Result = null != themeAndReducedMotionAwareAssetUrl1;
|
|
if (tmp32Result) {
|
|
let inAppFlowImageLargeTilted = assetVariant === tmp4(7406).GiftCustomizationBanner_AssetVariant.LARGE_TILTED;
|
|
const items7 = [tmp3.inAppFlowImage, ];
|
|
tmpResult = tmp(5308);
|
|
if (inAppFlowImageLargeTilted) {
|
|
inAppFlowImageLargeTilted = tmp3.inAppFlowImageLargeTilted;
|
|
}
|
|
const obj5 = { style: null, resizeMode: "contain", source: null };
|
|
items7[1] = inAppFlowImageLargeTilted;
|
|
obj5[0] = items7;
|
|
const obj6 = { uri: null };
|
|
obj6[0] = themeAndReducedMotionAwareAssetUrl1;
|
|
obj5[2] = obj6;
|
|
tmp32Result = tmp32(tmpResult, obj5);
|
|
}
|
|
items6[1] = tmp32Result;
|
|
const obj7 = { style: null, variant: "text-xs/semibold", color: "text-overlay-light", children: null };
|
|
obj7[0] = tmp3.chooseRewardText;
|
|
const intl3 = tmp4(1236).intl;
|
|
obj7[3] = intl3.string(tmp4(1236).t.cMiNit);
|
|
items6[2] = callback(tmp4(4338).Text, obj7);
|
|
obj[1] = items6;
|
|
let tmp26Result = tmp23(tmp24, obj);
|
|
}
|
|
const items8 = [tmp26Result, , ];
|
|
let tmp38 = !tmp12;
|
|
if (!tmp12) {
|
|
const obj8 = { variant: "text-sm/normal", children: null };
|
|
const intl4 = tmp4(1236).intl;
|
|
const obj9 = { paidURL: null };
|
|
obj9[0] = tmp(1993).getArticleURL(HelpdeskArticles.PAID_TERMS);
|
|
obj8[1] = intl4.format(tmp4(1236).t.hYoGUM, obj9);
|
|
tmp38 = callback(tmp4(4338).Text, obj8);
|
|
const tmpResult1 = tmp(1993);
|
|
}
|
|
items8[1] = tmp38;
|
|
const obj10 = { loading: null, variant: null, text: null, disabled: null, onPress: null };
|
|
obj10[0] = isPurchasing;
|
|
obj10[1] = str;
|
|
obj10[2] = stringResult;
|
|
let tmp42 = !canPurchaseIAP;
|
|
if (canPurchaseIAP) {
|
|
tmp42 = isPurchasing;
|
|
}
|
|
obj10[3] = tmp42;
|
|
let fn;
|
|
if (!isPurchasing) {
|
|
fn = () => {
|
|
let obj = defaultSelection(_undefined[39]);
|
|
obj.dismissKeyboard();
|
|
if (c10) {
|
|
if (c8) {
|
|
if (c8) {
|
|
_undefined2(tmp(tmp2[28]).PaymentFlowStep.REWARD_SKU_SELECT);
|
|
obj = { defaultHighlightedReward: null, allRewards: null, claimableRewards: null, onSelect: null };
|
|
obj[0] = defaultSelection;
|
|
let items = c3;
|
|
if (c3 == null) {
|
|
items = [];
|
|
}
|
|
obj[1] = items;
|
|
let items1 = claimableRewards;
|
|
if (claimableRewards == null) {
|
|
items1 = [];
|
|
}
|
|
obj[2] = items1;
|
|
obj[3] = function onSelect(arg0) {
|
|
callback(arg0);
|
|
navigation.navigate(outer1_0(outer1_2[29]).PremiumGiftScreens.CUSTOMIZATION);
|
|
};
|
|
navigation.navigate(tmp(tmp2[29]).PremiumGiftScreens.REWARD_SELECT, obj);
|
|
}
|
|
}
|
|
}
|
|
_undefined(() => {
|
|
navigation.navigate(outer1_0(outer1_2[29]).PremiumGiftScreens.SUCCESS);
|
|
});
|
|
};
|
|
}
|
|
obj10[4] = fn;
|
|
items8[2] = callback(tmp4(4755).Button, obj10);
|
|
obj[1] = items8;
|
|
return tmp23(tmp24, obj);
|
|
}
|
|
if (null != first) {
|
|
if (tmp11) {
|
|
if (null != selectedGiftingPromotionReward) {
|
|
const obj11 = { style: null, children: null };
|
|
obj11[0] = tmp3.selectedRewardRow;
|
|
const obj12 = { style: null, children: null };
|
|
obj12[0] = tmp3.selectedRewardBannerContainer;
|
|
const obj13 = { collectiblesItem: null, currentUser: null, gradientColors: null, gradientAngle: null };
|
|
obj13[0] = first;
|
|
obj13[1] = stateFromStores;
|
|
obj13[2] = tmp15;
|
|
let angle;
|
|
if (stateFromStores1 != null) {
|
|
const gradient2 = stateFromStores1.gradient;
|
|
if (gradient2 != null) {
|
|
angle = gradient2.angle;
|
|
}
|
|
}
|
|
obj13[3] = angle;
|
|
obj12[1] = callback(RewardPreview, obj13);
|
|
const items9 = [callback(tmp24, obj12), ];
|
|
let tmp28Result = !tmp10;
|
|
if (!tmp10) {
|
|
const obj14 = { variant: "tertiary", size: "sm", icon: null, accessibilityLabel: null, onPress: null };
|
|
obj14[2] = tmp28(tmp4(9721).PencilIcon, { size: "sm" });
|
|
const intl2 = tmp4(1236).intl;
|
|
obj14[3] = intl2.string(tmp4(1236).t.bt75uw);
|
|
obj14[4] = function onPress() {
|
|
let tmp = selectedGiftingPromotionReward;
|
|
if (c8) {
|
|
_undefined2(defaultSelection(_undefined[28]).PaymentFlowStep.REWARD_SKU_SELECT);
|
|
if (null == tmp) {
|
|
tmp = defaultSelection;
|
|
}
|
|
const obj = { defaultHighlightedReward: null, allRewards: null, claimableRewards: null, onSelect: null };
|
|
obj[0] = tmp;
|
|
let items = c3;
|
|
if (c3 == null) {
|
|
items = [];
|
|
}
|
|
obj[1] = items;
|
|
let items1 = claimableRewards;
|
|
if (claimableRewards == null) {
|
|
items1 = [];
|
|
}
|
|
obj[2] = items1;
|
|
obj[3] = function onSelect(arg0) {
|
|
callback(arg0);
|
|
navigation.navigate(outer1_0(outer1_2[29]).PremiumGiftScreens.CUSTOMIZATION);
|
|
};
|
|
navigation.navigate(defaultSelection(_undefined[29]).PremiumGiftScreens.REWARD_SELECT, obj);
|
|
const tmp3 = defaultSelection;
|
|
const tmp4 = _undefined;
|
|
}
|
|
};
|
|
tmp28Result = tmp28(tmp4(7796).IconButton, obj14);
|
|
}
|
|
items9[1] = tmp28Result;
|
|
obj11[1] = items9;
|
|
tmp26Result = tmp23(tmp24, obj11);
|
|
const tmp29 = RewardPreview;
|
|
}
|
|
}
|
|
}
|
|
tmp26Result = null;
|
|
if (GiftingBadgeExperiment.useConfig({ location: "PremiumGiftPurchaseButton" }).enabled) {
|
|
tmp26Result = null;
|
|
if (null != nextTier) {
|
|
const obj15 = { giftsToNextTier: null, nextTierName: null, nextTierIcon: null, analyticsLocation: null };
|
|
obj15[0] = stateFromStoresObject.giftsToNextTier;
|
|
let str2 = nextTier.name;
|
|
if (str2 == null) {
|
|
str2 = "";
|
|
}
|
|
obj15[1] = str2;
|
|
obj15[2] = nextTier.simple_icon_url;
|
|
obj15[3] = tmp(5788).PREMIUM_GIFT_CUSTOMIZATION;
|
|
tmp26Result = callback(tmp(10094), obj15);
|
|
const tmp26 = callback;
|
|
const tmpResult2 = tmp(10094);
|
|
}
|
|
}
|
|
};
|