// Module ID: 10909 // Function ID: 84757 // Name: CancelButton // Dependencies: [57, 5, 31, 27, 4123, 1850, 6271, 4977, 653, 655, 33, 4338, 10909, 1935, 4131, 689, 5094, 5119, 1212, 5085, 6153, 478, 10910, 8080, 10911, 10912, 10913, 10914, 566, 8651, 668, 9420, 8105, 5769, 5482, 10898, 4980, 10430, 5121, 4127, 8637, 4544, 2] // Exports: default, openQuestOrbsRewardModal // Module 10909 (CancelButton) import _slicedToArray from "_slicedToArray"; import _isNativeReflectConstruct from "_isNativeReflectConstruct"; import importAllResult from "getCollectiblesQuestReward"; import get_ActivityIndicator from "metadata"; import closure_9 from "_isNativeReflectConstruct"; import closure_10 from "_isNativeReflectConstruct"; import closure_11 from "_isNativeReflectConstruct"; import { RewardFilterTypes } from "QuestsExperimentLocations"; import { Orientation } from "ME"; import { CollectiblesMobileShopScreen as closure_14 } from "items"; import jsxProd from "_createForOfIteratorHelperLoose"; import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose"; import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose"; import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose"; let closure_15; let closure_16; let closure_6; let closure_7; let closure_8; let require = arg1; function CancelButton() { const tmp = callback4(); const require = tmp; const obj = { onPress() { outer1_1(outer1_2[11]).popWithKey(outer1_17); }, backImage() { const style = [tmp.closeButtonIcon]; return outer1_15(tmp(outer1_2[17]).XSmallIcon, { size: "lg", style }); } }; const intl = require(1212) /* getSystemLocale */.intl; obj.accessibilityLabel = intl.string(require(1212) /* getSystemLocale */.t.cpT0Cq); obj.labelVisible = false; obj.style = tmp.closeButton; return callback3(require(5094) /* Background */.HeaderBackButton, obj); } function StaticOrb() { let obj = { style: { width: "100%", height: "100%" } }; obj = {}; obj = {}; const tmp = callback6(); obj.uri = importDefault(10912); obj.source = obj; obj.style = tmp.animatedOrb; obj.fade = false; obj.children = callback3(importDefault(5085), obj); return callback3(closure_8, obj); } function AnimatedOrbContainer(isAppActive) { let _isNativeReflectConstruct; let tmp7; isAppActive = isAppActive.isAppActive; const tmp = callback6(); const tmp2 = callback(importAllResult.useState(false), 2); const first = tmp2[0]; const importDefault = tmp2[1]; const tmp4 = callback(importAllResult.useState(false), 2); const first1 = tmp4[0]; callback = tmp4[1]; [tmp7, _isNativeReflectConstruct] = callback(importAllResult.useState(true), 2); callback = importAllResult.useCallback(() => { callback(true); }, []); const items = [first, first1]; const callback1 = importAllResult.useCallback(() => { callback2(true); }, []); const effect = importAllResult.useEffect(() => { if (timeout) { if (first1) { const _setTimeout = setTimeout; timeout = setTimeout(() => { outer1_4(false); }, 1450); return () => clearTimeout(closure_0); } } }, items); let obj = { style: { width: "100%", height: "100%" } }; let tmp13 = !first; if (tmp13) { tmp13 = !first1; } if (tmp13) { obj = {}; obj = { height: "100%" }; obj.style = obj; tmp13 = callback3(closure_8, obj); } const items1 = [tmp13, , ]; const obj1 = { uri: importDefault(first1[26]) }; const items2 = [tmp.animatedOrb, ]; let tmp18 = tmp7; if (!tmp7) { tmp18 = !first1; } if (tmp18) { const obj2 = { opacity: 0 }; tmp18 = obj2; } items2[1] = tmp18; obj1.style = items2; obj1.onLoad = callback1; obj1.animate = !tmp7 && isAppActive; items1[1] = callback3(closure_22, obj1); if (tmp7) { const obj3 = { uri: importDefault(first1[27]) }; const items3 = [tmp.animatedOrb]; obj3.style = items3; obj3.onLoad = callback; obj3.animate = isAppActive; tmp7 = callback3(closure_22, obj3); } items1[2] = tmp7; obj.children = items1; return closure_16(closure_8, obj); } ({ ActivityIndicator: closure_6, StyleSheet: closure_7, View: closure_8 } = get_ActivityIndicator); ({ jsx: closure_15, jsxs: closure_16 } = jsxProd); const QuestOrbsRewardModal = "QuestOrbsRewardModal"; let obj = {}; obj = { alignSelf: "flex-start", marginHorizontal: require("_createForOfIteratorHelperLoose").space.PX_16, zIndex: 999 }; obj.closeButton = obj; _createForOfIteratorHelperLoose = { tintColor: require("_createForOfIteratorHelperLoose").colors.WHITE }; obj.closeButtonIcon = _createForOfIteratorHelperLoose; let closure_18 = _createForOfIteratorHelperLoose.createStyles(obj); let closure_19 = _createForOfIteratorHelperLoose.createStyles(() => { let obj = {}; obj = { flex: 1, backgroundColor: importDefault(689).colors.BACKGROUND_BASE_LOW }; obj.root = obj; obj.background = closure_7.absoluteFillObject; obj = { justifyContent: "center", alignItems: "center", backgroundColor: importDefault(689).colors.BACKGROUND_BASE_LOW }; const merged = Object.assign(closure_7.absoluteFillObject); obj.loading = obj; obj.header = { flexDirection: "row", alignItems: "flex-end", justifyContent: "flex-end" }; obj.main = { flex: 2 }; obj.animation = { flex: 3 }; const obj1 = { flex: 2, flexDirection: "column", justifyContent: "center", gap: importDefault(689).space.PX_16 }; obj.body = obj1; obj.title = { textAlign: "center", marginHorizontal: importDefault(689).space.PX_32 }; const obj2 = { textAlign: "center", marginHorizontal: importDefault(689).space.PX_32 }; obj.buttonsContainer = { padding: importDefault(689).space.PX_24, gap: importDefault(689).space.PX_16 }; const items = [{ translateY: 3 }]; obj.orbsIconAndroid = { transform: items }; obj.orbsIconIOS = { marginTop: 0, marginRight: 3 }; return obj; }); let closure_20 = importAllResult.memo((uri) => { uri = uri.uri; let flag = uri.animate; if (flag === undefined) { flag = true; } const items = [uri]; const effect = importAllResult.useEffect(() => { outer1_1(outer1_2[19]).preload(uri); }, items); const obj = { source: { uri }, style: { width: "100%", height: "100%" }, resizeMode: "cover", enableAnimation: flag, onLoad: uri.onLoad, usesSmallCache: false, fade: false }; return callback3(importDefault(5085), obj, "orb-animate-" + flag); }); let closure_21 = importAllResult.memo((animate) => { let onLoad; let uri; let flag = animate.animate; ({ uri, onLoad } = animate); if (flag === undefined) { flag = true; } let aPNGPlayerControls; const ref = importAllResult.useRef(null); aPNGPlayerControls = flag(6153).useAPNGPlayerControls(ref); const items = [flag, aPNGPlayerControls]; const effect = importAllResult.useEffect(() => { if (flag) { obj.play(); } else { obj.stop(); } }, items); return callback3(flag(6153).APNGPlayer, { ref, url, autoplay: false, style: { width: "100%", height: "100%" }, onLoad }); }); let closure_22 = importAllResult.memo((animate) => { let onLoad; let style; let uri; let flag = animate.animate; ({ uri, style, onLoad } = animate); if (flag === undefined) { flag = true; } let obj = require(478) /* isWindows */; obj = { style, renderToHardwareTextureAndroid: true, needsOffscreenAlphaCompositing: true }; obj = { uri, onLoad, animate: flag }; obj.children = callback3(obj.isAndroid() ? closure_21 : closure_20, obj); return callback3(closure_8, obj); }); let closure_23 = importAllResult.memo((style) => { let isAppActive; let onAnimatedBgLoad; let onStaticBgLoad; let useReducedMotion; style = style.style; let obj = {}; ({ useReducedMotion, onStaticBgLoad, onAnimatedBgLoad, isAppActive } = style); obj = {}; obj = { uri: importDefault(10910) }; obj.source = obj; obj.style = style; obj.resizeMode = "cover"; obj.onLoad = onStaticBgLoad; const items = [callback3(importDefault(5085), obj), ]; let tmp3 = !useReducedMotion && isAppActive; if (tmp3) { const obj1 = { source: null, style: null, resizeMode: "cover", onLoad: null, disableFocus: true, playInBackground: true, preventsDisplaySleepDuringVideoPlayback: false }; const obj2 = { uri: importDefault(10911) }; obj1.source = obj2; obj1.style = style; obj1.onLoad = onAnimatedBgLoad; tmp3 = callback3(require(8080) /* _isNativeReflectConstruct */.VideoComponent, obj1); } items[1] = tmp3; obj.children = items; return closure_16(importAllResult.Fragment, obj); }); let closure_24 = _createForOfIteratorHelperLoose.createStyles({ animatedOrb: { position: "absolute", height: "130%", width: "130%", left: "-15%", top: "-15%", pointerEvents: "none" } }); let result = require("result").fileFinishedImporting("modules/quests/native/QuestOrbsRewardModal.native.tsx"); export default function QuestOrbsRewardModal(quest) { let dependencyMap; let tmp6; quest = quest.quest; let callback2; let callback3; let variant; let c6; let c7; let closure_8; let tmp = callback5(); let obj = balance(566); let items = [closure_9]; const stateFromStores = obj.useStateFromStores(items, () => outer1_9.useReducedMotion); let obj1 = balance(8651); balance = obj1.useFetchVirtualCurrencyBalance().balance; const tmp3 = callback2(variant.useState(false), 2); let first = tmp3[0]; let closure_1 = tmp3[1]; [tmp6, dependencyMap] = callback2(variant.useState(false), 2); let obj2 = balance(566); const items1 = [closure_11]; const stateFromStores1 = obj2.useStateFromStores(items1, () => outer1_11.getState()); const tmp8 = stateFromStores1 === balance(668).AppStates.ACTIVE; let obj3 = balance(566); const items2 = [closure_10]; const userStatus = quest.userStatus; let orbQuantityClaimed; const stateFromStores2 = obj3.useStateFromStores(items2, () => outer1_10.getCurrentUser()); if (null != userStatus) { orbQuantityClaimed = userStatus.orbQuantityClaimed; } if (null == orbQuantityClaimed) { let obj4 = balance(9420); orbQuantityClaimed = obj4.getQuestOrbRewardQuantityForUser(quest.config, stateFromStores2); } const effect = variant.useEffect(() => { balance(outer1_2[32]).lockOrientation(outer1_13.PORTRAIT); return () => { const result = balance(outer2_2[32]).restoreDefaultOrientation(); }; }, []); const callback = variant.useCallback(() => { callback(true); }, []); const callback1 = variant.useCallback(() => { callback2(true); }, []); callback2 = variant.useCallback(() => { let obj = callback(outer1_2[11]); obj.popWithKey(outer1_17); obj = {}; const items = [callback(outer1_2[34]).MOBILE_ORBS_REWARD_CLAIM_MODAL]; obj.analyticsLocations = items; obj.analyticsSource = callback(outer1_2[34]).MOBILE_ORBS_REWARD_CLAIM_MODAL; obj.screen = outer1_14.ORBS; const result = balance(outer1_2[33]).openCollectiblesShopMobile(obj); }, []); callback3 = variant.useCallback(() => { let obj = callback(outer1_2[11]); obj.popWithKey(outer1_17); obj = { filter: outer1_12.VIRTUAL_CURRENCY, fromContent: balance(outer1_2[36]).QuestContent.REWARD_MODAL }; balance(outer1_2[35]).openQuestHome(obj); }, []); let obj5 = balance(10430); variant = obj5.useMobileQuestOrbRewardModalCtaPriorityExperiment().variant; let num2 = 0; if (null != balance) { num2 = balance; } c6 = tmp18; const items3 = [variant, num2 >= 4100, callback3, callback2]; const memo = variant.useMemo(() => { if (balance(outer1_2[37]).MobileQuestOrbRewardModalCtaPriorityVariant.EARN_ORBS_PRIMARY === variant) { let obj = {}; obj = { text: balance(outer1_2[18]).t.uJAMFX, handler: callback3 }; obj.primary = obj; const obj1 = { text: balance(outer1_2[18]).t.GPdvqY, handler: callback2 }; obj.secondary = obj1; return obj; } else if (balance(outer1_2[37]).MobileQuestOrbRewardModalCtaPriorityVariant.EARN_ORBS_ONLY === tmp) { const obj2 = {}; const obj3 = { text: balance(outer1_2[18]).t.uJAMFX, handler: callback3 }; obj2.primary = obj3; obj2.secondary = null; return obj2; } else { const obj4 = {}; const obj5 = {}; const t = balance(outer1_2[18]).t; if (c6) { obj5.text = t.GPdvqY; obj5.handler = callback2; obj4.primary = obj5; const obj6 = { text: tmp18(tmp19[18]).t.uJAMFX, handler: callback3 }; obj4.secondary = obj6; let tmp4 = obj4; } else { obj5.text = t.uJAMFX; obj5.handler = callback3; obj4.primary = obj5; obj = { text: tmp18(tmp19[18]).t.GPdvqY, handler: callback2 }; obj4.secondary = obj; tmp4 = obj4; } return tmp4; } tmp = variant; }, items3); let obj6 = balance(478); const isAndroidResult = obj6.isAndroid(); c7 = isAndroidResult; closure_8 = isAndroidResult ? tmp.orbsIconAndroid : tmp.orbsIconIOS; obj = { style: tmp.root }; obj = { style: c7.absoluteFill, accessible: false, accessibilityElementsHidden: true, importantForAccessibility: "no-hide-descendants" }; obj1 = { useReducedMotion: stateFromStores, style: tmp.background, onStaticBgLoad: callback, onAnimatedBgLoad: callback1, isAppActive: tmp8 }; obj.children = callback3(closure_23, obj1); const items4 = [callback3(closure_8, obj), , ]; let tmp23 = !first; if (tmp23) { let tmp24 = stateFromStores; if (!stateFromStores) { tmp24 = !tmp6; } tmp23 = tmp24; } if (tmp23) { obj2 = { style: tmp.loading }; obj3 = { animating: true }; obj2.children = callback3(c6, obj3); tmp23 = callback3(closure_8, obj2); } items4[1] = tmp23; if (!first) { first = !stateFromStores && tmp6; const tmp29 = !stateFromStores && tmp6; } if (first) { obj4 = { style: null, top: true, bottom: true, left: true, right: true }; const items5 = [tmp.main]; obj4.style = items5; obj5 = { style: tmp.header, children: callback3(CancelButton, {}) }; const items6 = [callback3(closure_8, obj5), , , ]; obj6 = { style: tmp.animation, accessible: false, accessibilityElementsHidden: true, importantForAccessibility: "no-hide-descendants" }; if (stateFromStores) { let tmp39Result = tmp39(StaticOrb, {}); } else { const obj7 = { isAppActive: tmp8 }; tmp39Result = tmp39(AnimatedOrbContainer, obj7); } obj6.children = tmp39Result; items6[1] = callback3(closure_8, obj6); const obj8 = { style: tmp.body }; const obj9 = { variant: "heading-xl/bold", color: "text-overlay-light", style: tmp.title }; let intl = balance(1212).intl; const obj10 = {}; let num6 = 0; if (null != orbQuantityClaimed) { num6 = orbQuantityClaimed; } obj10.count = num6; obj9.children = intl.format(balance(1212).t.FIilK5, obj10); const items7 = [callback3(balance(4127).Heading, obj9), ]; const obj11 = { variant: "text-md/normal", color: "text-overlay-light", style: tmp.title }; const intl2 = balance(1212).intl; const format = intl2.format; let t = balance(1212).t; if (tmp18) { const obj12 = { balanceHook() { let obj = {}; obj = { size: "xs", color: callback(outer1_2[15]).colors.WHITE, style: closure_8 }; const items = [outer1_15(balance(outer1_2[40]).OrbsIcon, obj), , ]; let tmp2 = c7; if (c7) { obj = {}; const obj1 = { width: 2 }; obj.style = obj1; tmp2 = outer1_15(closure_8, obj); } items[1] = tmp2; items[2] = balance; obj.children = items; return outer1_16(variant.Fragment, obj, "balance"); }, profileDecoHook() { const obj = { variant: "text-md/semibold", color: "text-overlay-light" }; const intl = balance(outer1_2[18]).intl; obj.children = intl.string(balance(outer1_2[18]).t.pGDUH9); return outer1_15(balance(outer1_2[39]).Text, obj, "profileDeco"); } }; let formatResult = format(t["2dz2AL"], obj12); } else { const obj13 = { balanceHook() { let obj = {}; obj = { size: "xs", color: callback(outer1_2[15]).colors.WHITE, style: closure_8 }; const items = [outer1_15(balance(outer1_2[40]).OrbsIcon, obj), , ]; let tmp2 = c7; if (c7) { obj = {}; const obj1 = { width: 2 }; obj.style = obj1; tmp2 = outer1_15(closure_8, obj); } items[1] = tmp2; items[2] = balance; obj.children = items; return outer1_16(variant.Fragment, obj, "balance"); } }; formatResult = format(t.rKHvlX, obj13); } obj11.children = formatResult; items7[1] = callback3(balance(4127).Text, obj11); obj8.children = items7; items6[2] = closure_16(closure_8, obj8); const obj14 = { style: tmp.buttonsContainer }; const obj15 = { onPress: memo.primary.handler, variant: "primary", size: "lg" }; const intl3 = balance(1212).intl; obj15.text = intl3.string(memo.primary.text); const items8 = [callback3(balance(4544).Button, obj15), ]; let tmp59 = null != memo.secondary; if (tmp59) { const obj16 = { onPress: memo.secondary.handler, variant: "secondary", size: "lg" }; const intl4 = balance(1212).intl; obj16.text = intl4.string(memo.secondary.text); tmp59 = callback3(balance(4544).Button, obj16); } items8[1] = tmp59; obj14.children = items8; items6[3] = closure_16(closure_8, obj14); obj4.children = items6; first = closure_16(balance(5121).SafeAreaPaddingView, obj4); const tmp30 = closure_16; const tmp37 = callback3; const tmp38 = closure_8; const tmp43 = closure_16; const tmp44 = closure_8; const tmp45 = callback3; const tmp48 = callback3; const tmp54 = closure_16; const tmp55 = closure_8; } items4[2] = first; obj.children = items4; return closure_16(closure_8, obj); }; export const openQuestOrbsRewardModal = function openQuestOrbsRewardModal(quest) { // CreateGeneratorClosureLongIndex (0x67) importDefault(4338).pushLazy(callback2(4338), { quest: quest.quest }, QuestOrbsRewardModal); };