/* Metro module 13567; source: modules/quests/native/QuestCard.tsx; dependencies: [5, 57, 31, 27, 1878, 7093, 6528, 482, 33, 697, 4501, 3967, 4000, 6531, 7099, 9949, 9483, 1478, 9495, 13568, 4826, 4831, 7120, 566, 9500, 7116, 7091, 9505, 4048, 8461, 3860, 9513, 9519, 9517, 9518, 7121, 9520, 4080, 13591, 1962, 9950, 5132, 1244, 9480, 9523, 13595, 9484, 9502, 9503, 9963, 4020, 10076, 13596, 6239, 13634, 5475, 4589, 676, 4573, 13622, 4572, 6919, 13620, 9542, 13635, 4578, 13638, 8341, 10235, 13623, 2] */ import Module00005 from '../../../by-id/module-00005.js'; /* Metro dependency 5 */ import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */ import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */ import UseWindowDimensionsNative from '../../screen/useWindowDimensions.native.tsx'; /* Metro dependency 1478 */ import UserStore from '../../../stores/UserStore.tsx'; /* Metro dependency 1878 */ import UseTheme from '../../../hooks/useTheme.tsx'; /* Metro dependency 4048 */ import defaultImport3 from '../../../by-id/module-04589-LinearGradient.js'; /* Metro dependency 4589 */ import FastImage from '../../../components_native/common/FastImage.tsx'; /* Metro dependency 5475 */ import Module06919 from '../../../by-id/module-06919.js'; /* Metro dependency 6919 */ import QuestStore from '../QuestStore.tsx'; /* Metro dependency 7093 */ import QuestGameLogotype from './QuestGameLogotype.tsx'; /* Metro dependency 13622 */ import QuestContextMenu from './QuestContextMenu.tsx'; /* Metro dependency 13623 */ import PremiumRewardGradient from './PremiumRewardGradient.tsx'; /* Metro dependency 13634 */ import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as ReactNativeModule from '../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */ import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */ import * as JsxRuntimeModule from '../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */ import * as ConstantsModule from '../../../external/discord_common/js/shared/Constants.tsx'; /* Metro dependency 482 */ import * as FluxModule from '../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */ import * as ConstantsIOSModule from '../../../ConstantsIOS.tsx'; /* Metro dependency 676 */ import * as IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */ import * as UseTokenModule from '../../../design/tokens/native/useToken.tsx'; /* Metro dependency 3860 */ import * as SharedModule from '../../../external/discord_common/js/packages/design/shared.tsx'; /* Metro dependency 3967 */ import * as ColorUtilsModule from '../../../utils/ColorUtils.tsx'; /* Metro dependency 4000 */ import * as FabricUtilsModule from '../../../utils/native/FabricUtils.tsx'; /* Metro dependency 4020 */ import * as StackNativeModule from '../../../design/components/Stack/native/Stack.native.tsx'; /* Metro dependency 4572 */ import * as TextModule from '../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */ import * as ButtonNativeModule from '../../../design/components/Button/native/Button.native.tsx'; /* Metro dependency 4578 */ import * as CardNativeModule from '../../../design/components/Card/native/Card.native.tsx'; /* Metro dependency 6239 */ import * as QuestConstantsModule from '../QuestConstants.tsx'; /* Metro dependency 6528 */ import * as QuestDataUtilsModule from '../utils/QuestDataUtils.tsx'; /* Metro dependency 7091 */ import * as GetQuestLoggerModule from '../lib/getQuestLogger.tsx'; /* Metro dependency 7099 */ import * as QuestTaskUtilsModule from '../utils/QuestTaskUtils.tsx'; /* Metro dependency 7116 */ import * as AnalyticsTypesModule from '../lib/analytics/AnalyticsTypes.tsx'; /* Metro dependency 7120 */ import * as IconButtonNativeModule from '../../../design/components/Button/native/IconButton.native.tsx'; /* Metro dependency 8341 */ import * as UseFetchCollectiblesProductModule from '../../collectibles/hooks/useFetchCollectiblesProduct.tsx'; /* Metro dependency 8461 */ import * as QuestUtilsNativeModule from './QuestUtils.native.tsx'; /* Metro dependency 9480 */ import * as QuestHooksModule from '../hooks/QuestHooks.tsx'; /* Metro dependency 9483 */ import * as AssetUtilsModule from '../lib/AssetUtils.tsx'; /* Metro dependency 9495 */ import * as QuestRewardUtilsModule from '../utils/QuestRewardUtils.tsx'; /* Metro dependency 9500 */ import * as QuestOrbMultiplierHooksModule from '../hooks/QuestOrbMultiplierHooks.tsx'; /* Metro dependency 9502 */ import * as QuestCopyUtilsModule from '../utils/QuestCopyUtils.tsx'; /* Metro dependency 9505 */ import * as ContentImpressionTrackerHooksModule from '../lib/analytics/ContentImpressionTrackerHooks.tsx'; /* Metro dependency 9513 */ import * as AdAnalyticsInterfaceExperimentModule from '../experiments/AdAnalyticsInterfaceExperiment.tsx'; /* Metro dependency 9519 */ import * as AnalyticsHooksModule from '../lib/analytics/AnalyticsHooks.tsx'; /* Metro dependency 9949 */ import * as QuestCopyHooksModule from '../hooks/QuestCopyHooks.tsx'; /* Metro dependency 9950 */ import * as GameProfileAnalyticUtilsModule from '../../game_profile/GameProfileAnalyticUtils.tsx'; /* Metro dependency 9963 */ import * as OrbsIconModule from '../../../design/components/Icon/native/redesign/generated/OrbsIcon.tsx'; /* Metro dependency 10076 */ import * as QuestHooksNativeModule from './QuestHooks.native.tsx'; /* Metro dependency 13568 */ function _fun103070(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#103070, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13757:6, offset: 0x022561b7, size: 1218 bytes, params: 8, frame: 30 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); let value = ReactModule; const StyleSheet = ReactNativeModule.StyleSheet; const BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH; const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE; const value5 = (require(4501) /* metro dependency 4501: createStyles */).experimental_createToken(_fun103071); const value7 = (require(4501) /* metro dependency 4501: createStyles */).experimental_createToken(_fun103072); const value9 = (require(4501) /* metro dependency 4501: createStyles */).experimental_createToken(function({theme}) { var isThemeDark = require(dependencyMap[11]).isThemeDark(theme); theme = importDefault(dependencyMap[9]).colors; return isThemeDark ? theme.BACKGROUND_SURFACE_HIGH : theme.BLACK; }); let PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16; const createStylesModule = require(4501) /* metro dependency 4501: createStyles */; const createStyles = createStylesModule.createStyles; object = {}; const object2 = {'position': 'relative', 'padding': 0}; object2.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm; object2.backgroundColor = BACKGROUND_SURFACE_HIGH; PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16; object2.marginBottom = PX_16; object2.overflow = 'hidden'; object.container = object2; let PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12; object.heroContainer = {'display': 'flex', 'flexDirection': 'column', 'justifyContent': 'flex-end', padding: PX_12}; const object4 = {resizeMode: 'cover'}; copyDataProperties(object4, StyleSheet.absoluteFillObject, undefined); object.heroImg = object4; object.heroLinearGradientOverlay = StyleSheet.absoluteFillObject; const object5 = {position: 'absolute'}; let PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8; object5.top = PX_8; PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8; object5.right = PX_8; const BACKGROUND_BRAND = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BRAND; object5.backgroundColor = BACKGROUND_BRAND; let PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4; object5.padding = PX_4; object5.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm; const SHADOW_LOW = (importDefault(697) /* metro dependency 697: native */).shadows.SHADOW_LOW; copyDataProperties(object5, SHADOW_LOW, undefined); object.previewBadge = object5; PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12; object.rewardImgContainer = {'height': 64, 'width': 64, marginRight: PX_12}; object.heroFooterContainer = {'display': 'flex', 'flexDirection': 'row', 'flexWrap': 'wrap', 'justifyContent': 'space-between', 'alignItems': 'flex-end'}; object.heroFooterLeftContainer = {'display': 'flex', 'flexDirection': 'column', 'alignItems': 'flex-start'}; PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12; object.detailsWrapper = {display: 'flex', padding: PX_12}; object.detailsContainer = {'display': 'flex', 'flexDirection': 'row'}; PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4; object.questName = {marginBottom: PX_4}; PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4; object.bodyContainer = {'display': 'flex', 'flexDirection': 'column', gap: PX_4}; const object10 = {'flexDirection': 'row', 'alignItems': 'center', 'rowGap': null, 'columnGap': null, 'flexWrap': 'wrap'}; PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4; object10.rowGap = PX_4; PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8; object10.columnGap = PX_8; object.subtitleRow = object10; object.detailsTextContainer = {'flex': 1, 'justifyContent': 'center'}; const object11 = {'borderTopWidth': 1, 'borderTopColor': null, 'display': 'flex', 'flexDirection': 'row', 'alignItems': 'center'}; object11.borderTopColor = BORDER_SUBTLE; PX_12 = (importDefault(697) /* metro dependency 697: native */).space.PX_12; object11.padding = PX_12; object.buttonContainers = object11; const env0_16 = Reflect.apply(createStyles, createStylesModule, [object]); const value11 = createStylesModule; const env0_17 = value11.createStyleProperties({gradientStart: value5, gradientMid: value7, gradientEnd: value9}); value = value.memo(_fun103074); (FileImportTrackerModule).fileFinishedImporting('modules/quests/native/QuestCard.tsx'); exports.ESTIMATED_CARD_HEIGHT = 348; exports.QuestCard = value; function _fun103071({theme}) { // fn#103071, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13757:392, offset: 0x02256679, size: 154 bytes, params: 2, frame: 18 const isThemeDark2 = (SharedModule).isThemeDark(theme); const internal = (Native).internal; const resolveSemanticColor = internal.resolveSemanticColor; const colors = (Native).colors; return (require(4000) /* metro dependency 4000: ColorUtils */).hexOpacityToRgba(Reflect.apply(resolveSemanticColor, internal, [theme, isThemeDark2 ? colors.BACKGROUND_SURFACE_HIGH : colors.BLACK]), 0); } function _fun103072({theme}) { // fn#103072, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13757:619, offset: 0x02256713, size: 175 bytes, params: 2, frame: 18 const isThemeDark2 = (SharedModule).isThemeDark(theme); const internal = (Native).internal; const resolveSemanticColor = internal.resolveSemanticColor; const colors = (Native).colors; const semanticColor = Reflect.apply(resolveSemanticColor, internal, [theme, isThemeDark2 ? colors.BACKGROUND_SURFACE_HIGH : colors.BLACK]); return ColorUtilsModule.hexOpacityToRgba(semanticColor, isThemeDark2 ? 0.8 : 0.5); } function _fun103074({containerPadding, onLayout, quest, questContent, questContentPosition, sourceQuestContent}) { // fn#103074, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13757:2493, offset: 0x0225681b, size: 4744 bytes, params: 2, frame: 72 var r20; var moduleValue30; const Text = (TextModule).Text; const Button = (ButtonNativeModule).Button; var items13; var items14; var object; const IconButton = (IconButtonNativeModule).IconButton; let r25 = questContent !== undefined ? questContent : (require(6531) /* metro dependency 6531: QuestTypes */).QuestContent.QUEST_HOME_MOBILE; const sourceQuestContent2 = sourceQuestContent; const getQuestLogger = GetQuestLoggerModule.getQuestLogger; let QUEST_HOME_MOBILE = QuestsExperimentLocations.QUEST_HOME_MOBILE; const env0_5 = Reflect.apply(getQuestLogger, GetQuestLoggerModule, [{quest: quest, location: QUEST_HOME_MOBILE}]); const env0_6 = (AnalyticsHooksModule).useTrackQuestContentClickedWithImpression(); const env0_7 = (QuestHooksModule).useQuestTaskDetails(quest); const useQuestCompletionDetails = QuestHooksModule.useQuestCompletionDetails; const completedRatio = Reflect.apply(useQuestCompletionDetails, QuestHooksModule, [quest]).completedRatio; let userStatus = quest.userStatus; const value5 = userStatus?.enrolledAt != null; const styles = useStyles(); const value6 = (UseWindowDimensionsNative)().width - 2 * PX_16; const value7 = 0.2803030303030303 * value6; let binding = env0_5; const value8 = binding.useMemo(_fun103075, [quest, value6, value7]); const value9 = (QuestHooksNativeModule).useQuestGameLogotypeAssetUrl(quest); const {gradientStart, gradientMid, gradientEnd} = env0_17(); const [property, env0_11] = sourceQuestContent2(binding.useState(null), 2); const value13 = binding.useCallback(_fun103076, []); binding.useEffect(_fun103077, [property, quest.id, r25]); let useStateFromStores = FluxModule.useStateFromStores; const currentUser = Reflect.apply(useStateFromStores, FluxModule, [[UserStore], function() { return UserStore.getCurrentUser(); }]); const defaultRewardNameWithArticle = (QuestRewardUtilsModule).getDefaultRewardNameWithArticle(quest.config, currentUser); const value15 = FluxModule.useStateFromStoresObject([QuestStore], function() { var object = {}; var questStoreBinding = QuestStore; var questBinding = quest; object.reward = questStoreBinding.getRewards(questBinding.id); object.isFetchingRewardCode = questStoreBinding.isFetchingRewardCode(questBinding.id); object.isClaimingReward = questStoreBinding.isClaimingReward(questBinding.id); object.isEnrolling = questStoreBinding.isEnrolling(questBinding.id); object.questEnrollmentBlockedUntil = questStoreBinding.questEnrollmentBlockedUntil; return object; }); const env0_13 = value15.isFetchingRewardCode; const env0_14 = value15.isClaimingReward; const env0_15 = value15.isEnrolling; const questEnrollmentBlockedUntil = value15.questEnrollmentBlockedUntil; const useQuestFormattedDate = QuestHooksModule.useQuestFormattedDate; userStatus = quest.userStatus; const value16 = Reflect.apply(useQuestFormattedDate, QuestHooksModule, [userStatus?.completedAt, {'year': 'numeric', 'month': 'long', 'day': 'numeric'}]); const hasWatchVideoTasks2 = (QuestTaskUtilsModule).hasWatchVideoTasks(quest); const value17 = (QuestHooksNativeModule).useHasWatchVideoOnMobileTasks(quest.config); userStatus = quest.userStatus; const value18 = userStatus?.enrolledAt != null; userStatus = quest.userStatus; const value19 = userStatus?.completedAt != null; userStatus = quest.userStatus; const value20 = userStatus?.claimedAt != null; const isQuestExpired2 = (QuestDataUtilsModule).isQuestExpired(quest); const env0_23 = (QuestDataUtilsModule).getIsQuestExpiredButWithinThirtyDayLookback(quest); const getDefaultReward = QuestCopyUtilsModule.getDefaultReward; const skuId = Reflect.apply(getDefaultReward, QuestCopyUtilsModule, [quest.config]).skuId; const isThemeDark2 = (SharedModule).isThemeDark((UseTheme)()); const hasCollectiblesQuestReward2 = QuestRewardUtilsModule.hasCollectiblesQuestReward(quest.config); const useFetchCollectiblesProduct = UseFetchCollectiblesProductModule.useFetchCollectiblesProduct; let r8 = hasCollectiblesQuestReward2 && value19 ? skuId : null; const value22 = Reflect.apply(useFetchCollectiblesProduct, UseFetchCollectiblesProductModule, [r8]); const env0_24 = value22.product; const env0_25 = value22.isFetching; useStateFromStores = FluxModule.useStateFromStores; userStoreBinding = UserStore; const env0_26 = Reflect.apply(useStateFromStores, FluxModule, [[userStoreBinding], _fun103080]); const env0_27 = FluxModule.useStateFromStores([userStoreBinding], _fun103081); const {isMobileActivityQuest, questApplication, launchMobileActivity} = (QuestHooksNativeModule).useMobileActivityQuest(quest); let useToken = UseTokenModule.useToken; const BACKGROUND_BASE_LOWER = (Native).colors.BACKGROUND_BASE_LOWER; const env0_30 = Reflect.apply(useToken, UseTokenModule, [BACKGROUND_BASE_LOWER]); useToken = UseTokenModule.useToken; const BACKGROUND_BASE_LOW = (Native).colors.BACKGROUND_BASE_LOW; const env0_31 = Reflect.apply(useToken, UseTokenModule, [BACKGROUND_BASE_LOW]); useToken = UseTokenModule.useToken; const BACKGROUND_BASE_LOWEST = (Native).colors.BACKGROUND_BASE_LOWEST; const env0_32 = Reflect.apply(useToken, UseTokenModule, [BACKGROUND_BASE_LOWEST]); const r26 = questEnrollmentBlockedUntil != null && !value18 && !value19 && !value20; const value28 = QuestHooksModule.useQuestFormattedDate(quest.config.expiresAt, {'month': 'numeric', 'day': 'numeric'}); const value30 = env0_5.useCallback(_fun103083, [quest, r25, (ContentImpressionTrackerHooksModule).useQuestImpressionId(), sourceQuestContent]); const env0_37 = (QuestCopyHooksModule).usePrimaryCtaCopy({quest: quest, application: questApplication, shortText: true}); const value31 = _fun103085(); const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; const formatToPlainString = intl.formatToPlainString; const t = (require(1244) /* metro dependency 1244: indexNative */).t; const EAYZAr = t.EAYZAr; const value32 = Reflect.apply(formatToPlainString, intl, [EAYZAr, {questName: quest.config.messages.questName}]); const hasVirtualCurrencyReward2 = QuestRewardUtilsModule.hasVirtualCurrencyReward(quest.config); const value33 = (QuestOrbMultiplierHooksModule).useQuestOrbMultiplierEligibility(); const value34 = QuestHooksModule.useShouldShowBonusOrbsUX(quest, value33); r8 = value34 && value33 === (require(9503) /* metro dependency 9503: QuestOrbMultiplierUtils */).QuestOrbMultiplierEligibilityType.NITRO; userStatus = quest.userStatus; const orbQuantityClaimed = userStatus?.orbQuantityClaimed; if (orbQuantityClaimed != null) { r20 = orbQuantityClaimed; } else { moduleValue30 = QuestRewardUtilsModule; r20 = moduleValue30.getVirtualCurrencyRewardOrbQuantity(quest.config); } const questOrbRewardQuantityForUser = QuestRewardUtilsModule.getQuestOrbRewardQuantityForUser(quest.config, currentUser); const defaultRewardName = QuestRewardUtilsModule.getDefaultRewardName(quest.config, currentUser); const useQuestDescription = QuestCopyHooksModule.useQuestDescription; QUEST_HOME_MOBILE = QuestsExperimentLocations.QUEST_HOME_MOBILE; const GameProfileSources = (GameProfileAnalyticUtilsModule).GameProfileSources; const QuestHome = GameProfileSources.QuestHome; const value39 = Reflect.apply(useQuestDescription, QuestCopyHooksModule, [quest, sourceQuestContent, QUEST_HOME_MOBILE, QuestHome]); const value40 = env0_5.useMemo(_fun103094, [value20, hasVirtualCurrencyReward2, questOrbRewardQuantityForUser, r20, defaultRewardName, defaultRewardNameWithArticle]); const r46 = isQuestExpired2 && value19 && !value20 ? intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['l1jCM/'], {date: value16}) : value39; const getCtaLink = QuestCopyUtilsModule.getCtaLink; const value44 = Reflect.apply(getCtaLink, QuestCopyUtilsModule, [quest.config]) !== ''; binding = env0_5; const value45 = binding.useCallback(function() { var defaultImport = importDefault(dependencyMap[45]); var object = {}; object.questId = quest.id; object.initialStep = require(dependencyMap[52]).VideoQuestModalSteps.WATCH_VIDEO; object.sourceQuestContent = sourceQuestContent; defaultImport(object); }, [quest.id, sourceQuestContent]); const value47 = binding.useCallback(questContentPosition(_fun103099), [launchMobileActivity]); const Card = (CardNativeModule).Card; const items4 = [styles.container]; items4[1] = {marginHorizontal: PX_16 - containerPadding}; const items2 = [styles.heroContainer]; items2[1] = {height: value7}; const items3 = [ ((Component) => )(FastImage), ]; const {START, END} = (ConstantsIOSModule).VerticalGradient; items3[1] = ((Component) => )(defaultImport3); items3[2] = quest.preview && {intl.string((require(1244) /* metro dependency 1244: indexNative */).t.SKNnqq)}; const value50 = ((Component) => )(QuestGameLogotype); const Stack = (StackNativeModule).Stack; const value51 = 'always-white'; const r52 = isThemeDark2 ? 'text-muted' : value51; let string = intl.string; const VAbKhK = (require(1244) /* metro dependency 1244: indexNative */).t.VAbKhK; const items6 = [ {Reflect.apply(string, intl, [VAbKhK])} , ]; const imageBindingProps = {source: Module06919, style: {'height': 16, 'width': 16}, accessible: true, accessibilityRole: 'image'}; string = intl.string; const OfMjx9 = (require(1244) /* metro dependency 1244: indexNative */).t.OfMjx9; imageBindingProps.accessibilityLabel = Reflect.apply(string, intl, [OfMjx9]); items6[1] = ; items6[2] = ( {quest.config.messages.gamePublisher} ); const view = ( {value50} {items6} ); const value55 = !isQuestExpired2; items3[3] = ( {view} {(isQuestExpired2 ? value55 : !value20) && {intl.format((require(1244) /* metro dependency 1244: indexNative */).t['7D8r4F'], {expiryDate: value28})}} ); const items8 = [ {items3} , ]; items8[1] = ( { value5 ? ((Component) => )(importDefault(13620) /* metro dependency 13620: QuestProgressIndicator */) : ((Component) => )(importDefault(9542) /* metro dependency 9542: QuestRewardTile */) } {value32} {value40} {value34 && ((QuestOrbMultiplierPerkPill) => )((require(13635) /* metro dependency 13635: QuestOrbMultiplierPerkPill */).QuestOrbMultiplierPerkPill)} {r46 != null && {r46}} ); const PX_8 = (Native).space.PX_8; const jsxRuntimeEnv0_14Binding = jsxRuntimeEnv0_14; const object3 = {}; if (r26) { items14 = [