params.setIsShareSheetOpen(false)}\n shareLink={params.groupItem.shareLink}\n isActive={isActive}\n hasFunds={hasFunds}\n handleClickOnClose={params.handleClickOnCloseGroup}\n handleClickOnShare={() => params.setIsShareSheetOpen(true)}\n handleClickOnCreateGroup={params.createGroup}\n navigateHome={params.navigateHome}\n handleClickOnTransfer={params.handleClickOnTransfer}\n displayBackButton={params.isPayPalUser}\n onClickMoreOptions={params.onClickMoreOptions}\n />\n )\n }\n\n return \n}\n\nconst GroupDetail = ({ groupId }: GroupDetailProps) => {\n const [isShareSheetOpen, setIsShareSheetOpen] = useState(false)\n const worldReadyC = useContext(WorldReadyContext)\n const { getContent } = useLocalizedContent()\n const isUpdateCoverImage = useAppSelector(\n ({ sheets }) => sheets.updateCoverImage,\n )\n const isUpdateGroupOpened = useAppSelector(({ sheets }) => sheets.updateGroup)\n const isCloseGroupOpened = useAppSelector(({ sheets }) => sheets.closeGroup)\n const { isSmallerScreen } = useWindowSize()\n const dispatch = useAppDispatch()\n const [isQueryDelayed, setQueryDelayed] = useState(true)\n const { data, error, isLoading } = useGetGroupDetailQuery(groupId, {\n skip: isQueryDelayed,\n })\n const isUpdateFlowRef = useRef(false)\n const groupItem = data?.customer?.moneyPools?.moneyPool\n const isPayPalUser = !!serverData?.user\n const isAdmin =\n isPayPalUser &&\n serverData?.user?.encryptedAccountNumber === groupItem?.creator?.id\n\n const navigateHome = () => {\n tracking(\n Events.p2p_pools_detail_back_pressed({\n source: serverData.trackingParameters.externalSource,\n page_variant: getGroupDetailPageVariant(isAdmin, isPayPalUser),\n pool_id: groupId,\n }),\n )\n return navigate(HOME_PATH)\n }\n\n useEffect(() => {\n if (error) {\n // In case the query returns an error, we set it in the store\n dispatch(setHandledError(error as any)(dispatch))\n } else if (groupItem) {\n Events.updateCommonProps({\n source: serverData.trackingParameters.externalSource,\n page_variant: getGroupDetailPageVariant(isAdmin, isPayPalUser),\n pool_id: groupId,\n })\n tracking(\n Events.p2p_pools_detail_screen_shown({\n ...serverData.trackingParameters.pxpTracking,\n }),\n )\n }\n }, [error, groupItem, groupId, serverData, isAdmin, isPayPalUser])\n\n useEffect(() => {\n window.scrollTo({\n top: 0,\n behavior: 'smooth',\n })\n\n const externalData = getExternalData()\n if (externalData?.data?.error) {\n dispatch(setHandledError(externalData, getContent)(dispatch))\n } else {\n dispatch(clearHandledError())\n }\n\n /* This is a hack to delay the query of pool details.\n * this is to allow the asynchronous ALP service some time to insert the Activities */\n if (window.location.search.includes('from=contribute')) {\n setTimeout(() => {\n setQueryDelayed(false)\n }, serverData.ui.postContributeDelay)\n } else {\n setQueryDelayed(false)\n }\n }, [])\n\n if (isLoading || isQueryDelayed) {\n return \n }\n\n if (error) {\n return null\n }\n\n const handleContributeAsUser = () => {\n if (serverData?.personalization?.firstTimeUser?.link) {\n dispatch(toggleIntro())\n } else {\n window.location.assign(getContributionUserURL(groupId))\n }\n }\n\n const handleContributeAsGuest = () => {\n tracking(\n Events.p2p_pools_detail_contribute_pressed({\n source: serverData.trackingParameters.externalSource,\n page_variant: getGroupDetailPageVariant(isAdmin, isPayPalUser),\n pool_id: groupId,\n }),\n )\n dispatch(toggleIntro())\n }\n\n const handleClickOnTransfer = () => {\n tracking(\n Events.p2p_pools_detail_transfer_pressed({\n source: serverData.trackingParameters.externalSource,\n page_variant: getGroupDetailPageVariant(isAdmin, isPayPalUser),\n pool_id: groupId,\n }),\n )\n window.location.assign(getTransferURL(groupId))\n }\n\n const handleClickOnEdit = () => {\n isUpdateFlowRef.current = true\n dispatch(clearHandledError())\n tracking(\n Events.p2p_pools_detail_edit_pool_pressed({\n source: serverData.trackingParameters.externalSource,\n page_variant: getGroupDetailPageVariant(isAdmin, isPayPalUser),\n pool_id: groupId,\n }),\n )\n\n /*\n IMPORTANT: must use local browsers timezone when user is editing/updating\n the closeDate.\n If we use serverData.locality.timezone (PayPal Profile timezone),\n then WorldReady will attempt to parse the date in that timezone.\n However in the browser, new Date() will use the browsers timezone.\n This results in a date that is not correct if user is not currently in same timezone\n as their PayPal profile is configured.\n */\n const closeDateString = parseFormattedDate({\n worldReady: worldReadyC,\n value: groupItem.formattedTargetDate,\n timeZone: new Intl.DateTimeFormat().resolvedOptions().timeZone,\n })\n\n dispatch(\n initializeForm({\n id: groupItem.id,\n title: groupItem.name,\n description: groupItem.description,\n closeDate: closeDateString.toISOString(),\n goalAmount: groupItem?.targetAmount?.value,\n backgroundImageUrl: groupItem.backgroundImageUrl,\n }),\n )\n dispatch(toggleUpdateGroup({ focusOnCoverImageEditButton: false }))\n }\n\n const handleClickOnReport = () => {\n tracking(\n Events.p2p_pools_detail_report_pressed({\n source: serverData.trackingParameters.externalSource,\n page_variant: getGroupDetailPageVariant(isAdmin, isPayPalUser),\n pool_id: groupId,\n }),\n )\n }\n\n const handleClickBackOnCoverImage = () => {\n if (isUpdateFlowRef.current) {\n dispatch(toggleUpdateGroup({ focusOnCoverImageEditButton: true }))\n } else {\n dispatch(\n setCreateGroupFlow({\n toggleCreateGroupFlow: true,\n focusOnCoverImageEditButton: true,\n }),\n )\n }\n }\n\n const handleClickOnCloseGroup = () => {\n tracking(Events.p2p_pools_detail_more_options_close_pressed())\n dispatch(toggleCloseGroup())\n }\n\n const createGroup = () => {\n tracking(Events.p2p_pools_detail_more_options_create_pressed())\n isUpdateFlowRef.current = false\n if (serverData?.personalization?.firstTimeUser?.link) {\n dispatch(toggleIntro({ source: SHEET_SOURCE.CREATE_GROUP_BUTTON }))\n } else {\n dispatch(clearHandledError())\n dispatch(setCreateGroupFlow({ toggleCreateGroupFlow: true }))\n }\n }\n\n const onClickMoreOptions = () => {\n tracking(Events.p2p_pools_detail_more_options_pressed())\n }\n\n return (\n \n {isUpdateCoverImage && groupItem && (\n \n )}\n {(isUpdateGroupOpened || isCloseGroupOpened) && groupItem && (\n \n )}\n {renderContent({\n isSmallerScreen,\n isShareSheetOpen,\n setIsShareSheetOpen,\n groupId,\n groupItem,\n isAdmin,\n isPayPalUser,\n handleClickOnEdit,\n handleClickOnCloseGroup,\n handleClickOnReport,\n handleContributeAsGuest,\n handleContributeAsUser,\n navigateHome,\n createGroup,\n handleClickOnTransfer,\n onClickMoreOptions,\n })}\n
\n )\n}\n\nexport default GroupDetail\n"],"names":["_ref","onSubmit","dispatch","useAppDispatch","React","_HeadingText","as","size","isCoverOnCreateFlowEnabled","Message","id","GroupFormFields","handleSubmit","onClickEditImage","toggleUpdateGroup","focusOnCoverImageEditButton","forwardRef","ref","isLoading","goToCloseGroup","_Container","form","_Row","_Col","ButtonFullWidth","type","disabled","variant","onClick","backToUpdateGroup","_IconButton","svgIconComponent","_ArrowLeftIcon","buttonType","CloseGroupFooter","groupItem","onCloseGroup","tracking","Events","p2p_pools_edit_close_cancel_pressed","source","serverData","trackingParameters","externalSource","page_variant","pool_id","clearHandledError","toggleCloseGroup","CloseGroup","className","_BodyText","useUpdateGroupMutation","groupApi","injectEndpoints","endpoints","builder","updateGroup","mutation","query","body","_objectWithoutProperties","_excluded","url","concat","headers","_csrf","method","onQueryStarted","_ref2","_ref3","_asyncToGenerator","_regeneratorRuntime","_callee","queryFulfilled","putResult","result","_context","prev","next","_excluded2","util","updateQueryData","groupToUpdate","customer","moneyPools","moneyPool","name","description","targetAmount","backgroundImageUrl","sent","formattedTargetDate","data","t0","undo","stop","invalidatesTags","_result","error","arg","sentGroupToBottom","groups","group","firstClosedGroup","edges","findIndex","item","node","status","GROUP_STATUS","CLOSED","length","array","from","to","groupToMove","splice","forEach","index","cursor","useCloseGroupMutation","closeGroup","queryResult","detailCloseResult","userType","CREATOR","groupToClose","find","isEditable","getLocalizedContent","useLocalizedContent","getContent","_useState","useState","_useState2","_slicedToArray","openedCloseGroup","setOpenedCloseGroup","openCloseGroupButton","useRef","isUpdateGroupOpened","useAppSelector","sheets","isCloseGroupOpened","_ref4","isSmallScreen","useWindowSize","isFetching","useGetEligibilityQuery","_useUpdateGroupMutati","_useUpdateGroupMutati2","updateGroupMutation","isUpdatingGroup","_useCloseGroupMutatio","_useCloseGroupMutatio2","closeGroupMutation","isClosingGroup","useMemo","groupForm","selectGroupForm","useEffect","toggleFocusOnCoverImageEditButton","current","focus","_ref5","payload","_error$data","p2p_pools_edit_update_pressed","_objectSpread","createGroupPayload","unwrap","showGlobalToast","isSuccess","message","p2p_pools_edit_success","p2p_failed_customer_interaction_occurred","error_code","code","setHandledError","apply","arguments","_ref6","_callee2","groupId","_context2","p2p_pools_edit_close_confirm_pressed","goToUpdateGroupFields","isContentCentered","SheetWrapper","center","onCloseComplete","clearForm","title","hideTitle","footerContents","UpdateGroupFooter","isOpen","action","CloseGroupActions","onBeforeClose","skipFormFocus","UpdateGroup","getTransferURL","HOME_PATH","firstName","surname","props","link","initials","useDetailV1Dot1Style","isDetailsV1Dot1Enabled","creator","worldReadyC","useContext","WorldReadyContext","formattedCreatedBy","formatMessage","worldReady","contentId","formatOptions","creatorName","creatorInitials","getNameInitials","givenName","creatorNameClassName","profileImage","_Avatar","alt","src","_CaptionText","bottomShareContributeStyles","buttonFullStyles","elevationDivStyles","reportGroupStyles","isAdmin","isPayPalUser","shareLink","setIsShareSheetOpen","ShareGroupButtons","copySuccessfulMessage","HeaderGroup","StripComponent","ActivityComponent","FlatProgressComponent","formattedCreatorInfo","closingDate","reportLink","groupStatus","handleContributeAsUser","handleContributeAsGuest","handleClickOnReport","isShareSheetOpen","isActiveGroup","ACTIVE","formattedClosingDate","closing_date","ReportComponent","styles","commonStyles","_Link","href","target","ShareMobile","_Elevation","level","_Card","xs","ProfileCover","_Button","iconComponent","_ShareIosIcon","p2p_pools_detail_contribute_pressed","getGroupDetailPageVariant","role","noGutters","p2p_pools_detail_contribute_with_paypal_pressed","groupName","useDetailsV1Dot1","messageAndLinkToBeShared","linkToShare","shareContainerSection","_CopyToClipboardIcon","p2p_pools_detail_share_pressed","web_share_button","navigator","clipboard","writeText","addTrafficSourceParameter","LINK_SOURCE","COPY","label","_EmailIcon","e","preventDefault","sharing","_ShareMessengerIcon","FACEBOOK_APP_ID","window","location","_ShareFacebookIcon","_ShareTwitterIcon","_ShareWhatsappIcon","_TitleText","detailContainerPadding","overlayDetailContainer","ownerDetailContainer","isEditEnabled","hasBackgroundImage","handleClickOnEdit","setTimeout","scrollTo","top","behavior","editButton","_EditIcon","reportPool","isActive","Share","SmallerHeaderContent","groupDescription","isClosed","ClosedBadge","BigHeaderContent","isSmallerScreen","imageBack","imageEdit","imageStripDivStyles","imageStripNoImage","backgroundImage","_ref$displayBackButto","displayBackButton","_ref$displayEditButto","displayEditButton","onBackButtonClick","onEditButtonClick","createFlowEnabled","useDetailV1Dot1","backgroundImageDef","COVER_IMAGE_DEFAULT_IMAGE_URL","imgStyle","stripStyles","stripStyleName","stripStyle","_ChevronLeftIcon","p2p_pools_detail_edit_image_pressed","toggleUpdateCoverImage","_PictureIcon","activityDescription","activityDescriptionStyles","activityDetailLink","activityDetailStylesContributor","activityDetailStylesCreator","activityItemAmount","activityItemContainer","activityItemDetailsContainer","activityItemMainDetails","activityItemTimeAndPerson","colorAmountPositiveStyle","contributorAmount","elevationActivityStyles","emptyActivity","emptyActivityContainer","havePaypalAccount","loginSection","loginSectionContainer","loginToViewDetails","loginToViewDetailsContainer","noBulletStyles","nonUserContent","personName","signUpContainer","useLazyGetActivitiesQuery","getActivities","startCursor","_group$customer$money","activities","push","_toConsumableArray","_groupToUpdate$node$a","getStartCursor","_lastItem$cursor","lastItem","SeeMoreButton","_useLazyGetActivities","_useLazyGetActivities2","trigger","handleClickOnShowMore","p2p_pools_detail_activity_see_all_pressed","_LoadingSpinner","getProfilePhoto","person","displayPhotoUrl","profilePhotoUrl","getActivityItems","map","_item$node","_item$node2","_person$name","_person$name2","_item$node3","_item$node4","_item$node5","_item$node6","_item$node7","_item$node8","contributor","withdrawer","personInitials","amount","formattedAmount","time","formattedContributionTime","formattedWithdrawalTime","typename","__typename","transactionId","encryptedTransactionId","renderActivityPerson","renderActivityTime","renderDescription","onActivityLinkClick","generic","undefined","listItemStyle","ActivityItems","personInfo","_personInfo$name","fullName","timeInfo","renderContributorAmount","itemDescription","ActivityItemTemplate","key","totalCountActivities","p2p_pools_detail_recent_activity_transaction_pressed","secondary","assign","recentActivityTitle","renderTransactionsList","CurrentAmount","formattedCurrentAmount","hasFunds","transferUrl","fullWidthOnMobile","buttonContributeGuest","ContributeAsGuestButtons","AmountProgress","collectedAmount","formattedCollectedAmount","formattedTargetAmount","_LinearProgressMeter","max","value","steps","receivedAmount","buttonContributeUser","ContributeAsUserButtons","displayTransferButton","ClosingDate","isNewDetailsUI","chipUntilDate","currentAmount","Number","formattedTargetAmountMessage","_props$totalCount","strip","Strip","headerGroupDetail","HeaderGroupDetail","progressBar","FlatProgress","groupActivity","Activity","totalCount","SmallerScreenGroupDetail","OtherScreensGroupDetail","activityContainer","amountContributedLabel","p2p_pools_detail_login_pressed","p2p_pools_detail_sign_up_pressed","onContribute","_props$headingPropsOv","_extends","headingPropsOverride","text","alignTextCenter","sideBySideActionButton","MORE_OPTIONS_ITEMS","CREATE","actionMenuItem","decoration","_AddIcon","color","CLOSE","_CloseIcon","REPORT","_ReportProblemIcon","navigationOptions","items","iconSize","_ref$displayLabel","displayLabel","onClickMoreOptions","triggerRef","setIsOpen","actionItems","sideBySideActionButtonStyle","_OverflowIcon","_ActionMenu","onClose","initialItemFocus","onSelection","clickedOption","mobileTitle","options","itemClassName","isGuest","onGuestContribute","_props$sideBySideLayo","sideBySideLayout","_props$displayContrib","displayContributeButton","_props$displayTransfe","handleClickOnTransfer","_props$displayCreateB","displayCreateButton","onCreatePool","moreOptionsItems","colContainerStyle","MoreOptionsButton","_props$displayShareBu","displayShareButton","onShare","actionButtonsStyles","_CashIcon","children","_DisplayText","linearProgressMeterPropsOverride","shouldDisplayActivityHeading","renderDesktop","_props$totalCount2","isNonCreatorUserOnClosedGroup","isGroupCreationEnabled","navigateHome","TitleAndStatus","CollectedAmount","CollectedAmountProgress","ActionButtons","handleClickOnCreateGroup","_Divider","Description","ActivityHeading","ReportLinkSection","mobileStyles","style","fontWeight","isCreateGroupFlow","createGroupFlow","moreOptionsParams","onCreateClick","onCloseClick","handleClickOnClose","onReportClick","CreateScreen","redirectHomeAfterClosing","PageErrorAlert","mobileActionButtons","MobileActionButtons","handleClickOnShare","isMobileShareSheetOpen","handleCloseMobileShareSheet","renderMobile","getMobileOptions","getDesktopOptions","_data$customer","_serverData$user","_groupItem$creator","isUpdateCoverImage","updateCoverImage","_useState3","_useState4","isQueryDelayed","setQueryDelayed","_useGetGroupDetailQue","useGetGroupDetailQuery","skip","isUpdateFlowRef","user","encryptedAccountNumber","updateCommonProps","p2p_pools_detail_screen_shown","pxpTracking","_externalData$data","externalData","getExternalData","search","includes","ui","postContributeDelay","LoadingSpinner","getContentStyles","CoverImage","onClickBack","setCreateGroupFlow","toggleCreateGroupFlow","Update","params","_params$groupItem$cre","_params$groupItem$cre2","_params$groupItem$cre3","_params$groupItem$cre4","_params$groupItem","_params$groupItem2","configuration","reportUrl","sharedProps","GroupDetailV1Dot1","handleClickOnCloseGroup","createGroup","GroupDetailV1","renderContent","_groupItem$targetAmou","p2p_pools_detail_edit_pool_pressed","closeDateString","parseFormattedDate","timeZone","Intl","DateTimeFormat","resolvedOptions","initializeForm","closeDate","toISOString","goalAmount","p2p_pools_detail_more_options_close_pressed","p2p_pools_detail_report_pressed","toggleIntro","_serverData$personali","personalization","firstTimeUser","getContributionUserURL","p2p_pools_detail_back_pressed","navigate","_serverData$personali2","p2p_pools_detail_more_options_create_pressed","SHEET_SOURCE","CREATE_GROUP_BUTTON","p2p_pools_detail_transfer_pressed","p2p_pools_detail_more_options_pressed"],"sourceRoot":""}