{"version":3,"file":"static/chunks/631-8eacdcdea3334f6e.js","mappings":"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","sources":["webpack://_N_E/./src/components/Editable/styles.ts","webpack://_N_E/./src/components/Editable/index.tsx","webpack://_N_E/./src/components/FormActions/styles.ts","webpack://_N_E/./src/components/FormActions/index.tsx","webpack://_N_E/./src/components/Highlight/styles.ts","webpack://_N_E/./src/components/Highlight/index.tsx","webpack://_N_E/./src/components/OnlyYou/index.tsx","webpack://_N_E/./src/components/PageHeaderImage/index.tsx","webpack://_N_E/./src/components/PageMemberOf/styles.ts","webpack://_N_E/./src/components/PageMemberOf/index.tsx","webpack://_N_E/./src/components/PageStory/index.tsx","webpack://_N_E/./src/components/PageSubtitle /index.tsx","webpack://_N_E/./src/components/PageTitle/index.tsx","webpack://_N_E/./src/components/Seasonal/index.tsx","webpack://_N_E/./src/components/TotalsSection/index.tsx"],"sourcesContent":["import styled from \"styled-components\";\nimport {\n type SpaceType,\n type ColorsType,\n type ThemeType,\n} from \"@cruk/cruk-react-components\";\n\nexport const EditableWrapper = styled.div<{\n $fadeOnHover: boolean;\n $editButtonPosition: \"top-right\" | \"center\";\n}>`\n position: relative;\n width: 100%;\n cursor: pointer;\n\n ${({ $editButtonPosition }) =>\n $editButtonPosition === \"center\"\n ? \"display:flex; align-items:center;\"\n : null};\n\n &:focus {\n outline: auto;\n }\n\n &:hover {\n * {\n opacity: ${({ $fadeOnHover }) => ($fadeOnHover ? \"0.8\" : \"1\")};\n }\n }\n`;\n\nexport const EditIconWrapper = styled.div<{\n $editButtonColor?: string;\n $editButtonBackgroundColor?: string;\n $editButtonPosition: \"top-right\" | \"center\";\n $editButtonMarginRight: string;\n theme: ThemeType;\n}>`\n display: flex;\n align-items: center;\n justify-content: space-around;\n position: ${({ $editButtonPosition }) =>\n $editButtonPosition === \"top-right\" ? \"absolute\" : \"unset\"};\n right: 2px;\n top: 2px;\n height: ${({ theme }) => theme.spacing.s};\n width: ${({ theme }) => theme.spacing.s};\n margin-right: ${({ $editButtonMarginRight, theme }) =>\n $editButtonMarginRight &&\n typeof theme.spacing[$editButtonMarginRight as SpaceType] !== \"undefined\"\n ? theme.spacing[$editButtonMarginRight as SpaceType]\n : 0};\n border-radius: 3px;\n background-color: ${({ $editButtonBackgroundColor, theme }) =>\n $editButtonBackgroundColor &&\n typeof theme.colors[$editButtonBackgroundColor as keyof ColorsType] !==\n \"undefined\"\n ? theme.colors[$editButtonBackgroundColor as keyof ColorsType]\n : $editButtonBackgroundColor || \"rgba(255,255,255,0)\"};\n color: ${({ $editButtonColor, theme }) =>\n $editButtonColor &&\n typeof theme.colors[$editButtonColor as keyof ColorsType] !== \"undefined\"\n ? theme.colors[$editButtonColor as keyof ColorsType]\n : $editButtonColor || \"rgba(255,255,255,0)\"};\n`;\n","import { useState, type KeyboardEvent, type ReactNode, useEffect } from \"react\";\nimport { Box, IconFa } from \"@cruk/cruk-react-components\";\nimport { faPenToSquare } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { useTracking } from \"@fwa/src/hooks/useTracking\";\nimport { useActiveSectionContext } from \"@fwa/src/contexts/ActiveSectionContext\";\nimport { useKey } from \"@fwa/src/hooks/useKey\";\nimport { camelToSnakeCase } from \"@fwa/src/utils/formatUtils\";\n\nimport { FormActions } from \"@fwa/src/components/FormActions\";\nimport { Highlight } from \"@fwa/src/components/Highlight\";\n\nimport {\n EditableWrapper,\n EditIconWrapper,\n} from \"@fwa/src/components/Editable/styles\";\n\nimport { type PageType } from \"@fwa/src/types\";\n\ntype Props = {\n /**\n * fieldName is used mainly for populating the aria-label and the GTM update events\n * so if this is working with form with more than one field then use a sensible name for this groups of fields\n */\n fieldName?: string;\n /**\n * viewNode is the non-editable view of the field\n */\n viewNode: ReactNode;\n /**\n * editNode is the editable view of the field\n */\n editNode: ReactNode;\n /**\n * handleSubmit: on submit clicked, MUST something truthy or the editable modal will not close\n */\n handleSubmit: () => Promise;\n /**\n * handleCancel: on cancel clicked, will always close modal\n */\n handleCancel?: () => void;\n /**\n * isLoading: loading state, will disable sumbit button\n */\n isLoading: boolean;\n /**\n * editButtonColor: edit icon colour\n */\n editButtonColor?: string;\n /**\n * editButtonBackgroundColor: edit icon background colour\n */\n editButtonBackgroundColor?: string;\n /**\n * editButtonBackgroundColor: edit icon background colour\n */\n editButtonHidden?: boolean;\n /**\n * editButtonPosition: edit icon position\n */\n editButtonPosition?: \"top-right\" | \"center\";\n /**\n * editButtonMarginRight: edit icon margin from right, used for header image form\n */\n editButtonMarginRight?: string;\n /**\n * tooltip is on hover tooltip\n */\n tooltip?: string;\n /**\n * fullWidth: Used for fields like header image when the field is full width in parent container and has no padding\n */\n fullWidth?: boolean;\n /**\n * half opacity on hover\n */\n fadeOnHover?: boolean;\n};\n\n/**\n * This component is for inline editing fields where you can pass in a viewNode and an editNote.\n * It turns turn the viewNote into one big edit button which opens the editNode.\n * The editNode is wrapped modal style form with submit/cancel keyboard actions\n * */\nexport const Editable = ({\n fieldName,\n viewNode,\n editNode,\n handleSubmit,\n handleCancel,\n isLoading,\n tooltip,\n editButtonColor = \"inherit\",\n editButtonHidden,\n editButtonBackgroundColor,\n editButtonPosition = \"top-right\",\n editButtonMarginRight = \"none\",\n fullWidth = false,\n fadeOnHover = true,\n}: Props) => {\n const { trackEventGtm } = useTracking();\n const [activeSectionContext, setActiveSectionContext] =\n useActiveSectionContext();\n const [isEditing, setIsEditing] = useState(false);\n\n useEffect(() => {\n const isActiveSection =\n !!fieldName && activeSectionContext.activeSection === fieldName;\n setIsEditing(isActiveSection);\n }, [activeSectionContext, fieldName]);\n // Global escape key listener\n useKey(\n () => {\n doCancel();\n },\n {\n detectKeys: [\"Escape\"],\n },\n [],\n );\n\n const closeEnhancePageHighlight = () => {\n if (activeSectionContext.activeSection) {\n setActiveSectionContext({ activeSection: null });\n }\n };\n\n const doSubmit = () => {\n handleSubmit()\n .then((resData) => {\n // We don't want to close the modal until we know we got something back from to prove a successful API call,\n // This doesn't have to be page data it could be anything.\n // This is because we catching all errors to display error messages in the form before this point\n if (!resData) return undefined;\n if (fieldName) {\n trackEventGtm({\n event: `update_${camelToSnakeCase(fieldName || \"\")}`,\n });\n }\n setIsEditing(false);\n closeEnhancePageHighlight();\n return undefined;\n })\n .catch(() => {\n return undefined;\n });\n };\n\n const handleEditClicked = () => {\n setIsEditing(true);\n };\n\n const handleEditClickedKeyDown = (e: KeyboardEvent) => {\n if (e.keyCode === 13 || e.key === \"Enter\") {\n e.preventDefault();\n setIsEditing(true);\n }\n };\n\n const doCancel = () => {\n if (handleCancel) handleCancel();\n setIsEditing(false);\n closeEnhancePageHighlight();\n };\n\n return isEditing ? (\n \n \n {editNode}\n \n \n \n ) : (\n \n {viewNode}\n {editButtonHidden ? null : (\n \n \n \n )}\n \n );\n};\n\nexport default Editable;\n","import { type ThemeType } from \"@cruk/cruk-react-components\";\nimport styled, { keyframes } from \"styled-components\";\n\nconst fade = keyframes`\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n`;\n\nexport const StyledContainer = styled.div<{ theme: ThemeType }>`\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-end;\n flex-direction: column-reverse;\n animation-direction: normal;\n animation-timing-function: ease-in-out;\n animation-duration: 0.2s;\n animation-name: ${fade};\n\n > * {\n width: 100%;\n padding: 0;\n margin: ${({ theme }) => theme.spacing.s} 0 0 0;\n }\n\n > *:last-child {\n margin: 0;\n }\n\n @media (min-width: ${({ theme }) => theme.breakpoint.mobile}) {\n flex-direction: row;\n > * {\n width: auto;\n padding: 0 ${({ theme }) => theme.spacing.s};\n margin: 0 ${({ theme }) => theme.spacing.s} 0 0;\n }\n\n > *:last-child {\n margin: 0;\n }\n }\n`;\n\nexport default StyledContainer;\n","import React, { type MouseEvent, type KeyboardEvent } from \"react\";\nimport { Button } from \"@cruk/cruk-react-components\";\n\nimport { StyledContainer } from \"./styles\";\n\ntype Props = {\n cancelLabel?: string;\n submitLabel?: string;\n isValid?: boolean;\n isLoading?: boolean;\n onCancel: (() => void) | null | undefined;\n onSubmit: (e: MouseEvent) => void;\n onInvalid?: () => void;\n submitButtonType: \"button\" | \"submit\";\n};\n\nexport const FormActions = ({\n cancelLabel = \"Cancel\",\n submitLabel = \"Save\",\n onCancel,\n isValid = true,\n isLoading = false,\n onSubmit,\n onInvalid,\n submitButtonType,\n}: Props) => {\n const doCancel = () => {\n if (isLoading) return;\n if (onCancel) {\n onCancel();\n }\n };\n\n const handleCancelClick = () => {\n doCancel();\n };\n\n const handleSubmitClick = (e: MouseEvent) => {\n if (isValid) {\n onSubmit(e);\n } else if (onInvalid) onInvalid();\n };\n\n const handleEditClickedKeyDown = (e: KeyboardEvent) => {\n if (e.keyCode === 13 || e.key === \"13\") {\n doCancel();\n }\n };\n\n return (\n \n {!!onCancel && (\n \n {cancelLabel}\n \n )}\n \n {isLoading ? \"Loading...\" : submitLabel}\n \n \n );\n};\n\nexport default FormActions;\n","import { type ThemeType } from \"@cruk/cruk-react-components\";\nimport styled, { keyframes } from \"styled-components\";\n\nconst fade = keyframes`\n from {\n opacity: 0;\n }\n to {\n opacity: 0.5;\n }\n`;\n\nexport const OverlayInlineEdit = styled.div`\n background: #333;\n bottom: 0;\n left: 0;\n opacity: 0.5;\n position: fixed;\n right: 0;\n top: 0;\n transition:\n opacity 0.3s,\n bottom 0s 0.3s;\n z-index: 100;\n animation-direction: normal;\n animation-timing-function: ease-in-out;\n animation-duration: 0.3s;\n animation-name: ${fade};\n`;\n\nexport const HightLight = styled.div<{\n $fullWidth: boolean;\n theme: ThemeType;\n}>`\n z-index: 110;\n position: relative;\n background-color: white;\n margin: ${({ theme, $fullWidth }) =>\n $fullWidth ? `-${theme.spacing.s}` : 0};\n`;\n","import { type ReactNode } from \"react\";\nimport dynamic from \"next/dynamic\";\n\nimport {\n OverlayInlineEdit,\n HightLight,\n} from \"@fwa/src/components/Highlight/styles\";\n\nconst FocusLock = dynamic(() => import(\"react-focus-lock\"));\n\ntype Props = {\n isHighlighted: boolean;\n children?: ReactNode;\n fullWidth?: boolean;\n};\n\n// Component used for in-line-edit / edit-in-place, adds and overlay over everything else\n// and creates a focus lock around the highlighted children\nexport const Highlight = ({\n isHighlighted = false,\n fullWidth = false,\n children,\n}: Props) =>\n isHighlighted ? (\n <>\n \n {children}\n \n \n \n ) : (\n <>{children}\n );\n\nexport default Highlight;\n","import { Box, Text, IconFa } from \"@cruk/cruk-react-components\";\nimport { Row } from \"@fwa/src/components/styles\";\nimport { faEye } from \"@fortawesome/free-solid-svg-icons\";\n\ntype Props = {\n textColor?: string;\n};\n\nexport const OnlyYou = ({ textColor }: Props) => (\n \n \n \n \n \n \n Only you can see this\n \n \n \n);\n\nexport default OnlyYou;\n","import dynamic from \"next/dynamic\";\n\nimport { imagePathFromImageType } from \"@fwa/src/services/imageService\";\n\nimport { HeaderImage } from \"@fwa/src/components/styles\";\nimport { Seasonal } from \"@fwa/src/components/Seasonal\";\n\nimport {\n type TeamPageType,\n type FundraisingPageType,\n type PageType,\n} from \"@fwa/src/types\";\n\nconst EditableHeaderImageForm = dynamic(\n () => import(\"@fwa/src/components/EditableHeaderImageForm\"),\n);\n\ntype Props = {\n page: FundraisingPageType | TeamPageType;\n canEdit: boolean;\n mutatePage: (data: Partial) => Promise;\n};\n\nexport const PageHeaderImage = ({ page, canEdit, mutatePage }: Props) => (\n
\n {canEdit && page.uniqueId ? (\n ) =>\n mutatePage({ ...page, ...data })\n }\n currentHeaderImage={page.headerImage}\n />\n ) : (\n \n \n \n )}\n
\n);\n\nexport default PageHeaderImage;\n","import { type ThemeType, Text } from \"@cruk/cruk-react-components\";\nimport styled from \"styled-components\";\n\nexport const TextResponsive = styled(Text)<{ theme: ThemeType }>`\n text-align: left;\n\n @media (min-width: ${({ theme }) => theme.breakpoint.desktop}) {\n text-align: center;\n }\n`;\nexport const ActivityLink = styled.span<{ theme: ThemeType }>`\n display: block;\n color: ${({ theme }) => theme.colors.textDark};\n text-decoration: none;\n`;\n\nexport default TextResponsive;\n","import NextLink from \"next/link\";\nimport { Box, Link as A, IconFa } from \"@cruk/cruk-react-components\";\nimport { faPeopleGroup } from \"@fortawesome/free-solid-svg-icons\";\n\nimport { useSwrGet } from \"@fwa/src/hooks/useSwrGet\";\nimport { fwsUrlPageParentMemberships } from \"@fwa/src/services/fundraisingPageService\";\nimport { useOptimizelyContext } from \"@fwa/src/contexts/OptimizelyContext\";\nimport { useTracking } from \"@fwa/src/hooks/useTracking\";\n\nimport {\n ActivityItem,\n ActivityIconWrapper,\n ActivityItemWrapper,\n} from \"@fwa/src/components/styles\";\nimport {\n TextResponsive,\n ActivityLink,\n} from \"@fwa/src/components/PageMemberOf/styles\";\n\nimport {\n type FwsResponseData,\n type PageType,\n type TeamMemberType,\n} from \"@fwa/src/types\";\n\ntype Props = {\n page: PageType;\n textColor?: string;\n fallbackData?: FwsResponseData;\n canEdit?: boolean;\n};\n\nexport const PageMemberOf = ({\n page,\n textColor,\n fallbackData,\n canEdit = false,\n}: Props) => {\n const { trackEventGtm } = useTracking();\n const { trackEventOptimizely } = useOptimizelyContext();\n const url = page\n ? `${fwsUrlPageParentMemberships({\n pageId: page.uniqueId,\n currentPage: 1,\n itemsPerPage: 3,\n })}`\n : null;\n const fallbackResponse = fallbackData;\n const { data } = useSwrGet>(url, {\n fallbackData: fallbackResponse,\n revalidateOnMount: true,\n });\n const memberships = data?.results || [];\n\n return (\n <>\n {!!memberships?.length && (\n \n \n \n \n \n\n \n \n {` A member of `}\n {memberships\n ?.filter((membership: TeamMemberType) => membership.uniqueId)\n .map((membership: TeamMemberType, index: number) => {\n const team = membership.parentPage;\n return (\n \n {`${index > 0 ? \" and \" : \"\"}`}\n \n \n {team.title}\n \n \n \n );\n })}\n \n \n \n \n )}\n\n {!memberships?.length &&\n canEdit &&\n page.entityType === \"FundraisingPage\" ? (\n \n {\n trackEventOptimizely({ eventKey: \"become_part_of_a_team_click\" });\n trackEventGtm({\n event: \"join_team_cta\",\n cta: \"fundraising_page\",\n });\n }}\n data-cta-type=\"join-team\"\n >\n \n \n \n \n \n\n \n Create or join a team\n \n \n \n \n \n ) : null}\n \n );\n};\n\nexport default PageMemberOf;\n","import dynamic from \"next/dynamic\";\nimport { Box, Heading, Text } from \"@cruk/cruk-react-components\";\n\nimport {\n type TeamPageType,\n type FundraisingPageType,\n type PageType,\n} from \"@fwa/src/types\";\n\nconst EditablePageStoryForm = dynamic(\n () => import(\"@fwa/src/components/EditablePageStoryForm\"),\n);\n\nexport const PageStory = ({\n page,\n canEdit,\n updateAndMutatePage,\n isTeam = false,\n}: {\n page: PageType;\n canEdit: boolean;\n updateAndMutatePage: (\n data: Partial,\n refresh?: boolean,\n ) => Promise;\n isTeam?: boolean;\n}) => {\n if (!page) return null;\n\n const foundStory =\n page.story ||\n (page as FundraisingPageType)?.fundraisingPageType?.story ||\n (page as TeamPageType)?.teamLeaderPage?.fundraisingPageType?.story ||\n \"\";\n\n return (\n <>\n {canEdit ? (\n \n \n {`${isTeam ? \"Story\" : \"My Story\"}`}\n \n \n \n ) : (\n <>\n {foundStory.length > 0 && (\n \n \n {`${isTeam ? \"Story\" : \"My Story\"}`}\n \n \n {foundStory}\n \n \n )}\n \n )}\n \n );\n};\n\nexport default PageStory;\n","import dynamic from \"next/dynamic\";\nimport { Box, Heading } from \"@cruk/cruk-react-components\";\n\nimport { type PageType } from \"@fwa/src/types\";\n\nconst EditablePageSubtitleForm = dynamic(\n () => import(\"@fwa/src/components/EditablePageSubtitleForm\"),\n);\n\nexport const PageSubtitle = ({\n page,\n canEdit,\n updateAndMutatePage,\n isTeam = false,\n}: {\n page: PageType;\n canEdit: boolean;\n updateAndMutatePage: (\n data: Partial,\n refresh?: boolean,\n ) => Promise;\n isTeam?: boolean;\n}) => {\n if (!page) return null;\n\n return (\n <>\n {canEdit ? (\n \n \n \n ) : (\n <>\n {page?.subtitle?.length > 0 && (\n \n \n {page.subtitle}\n \n \n )}\n \n )}\n \n );\n};\n\nexport default PageSubtitle;\n","import dynamic from \"next/dynamic\";\nimport styled from \"styled-components\";\nimport { Box, Heading, type ThemeType } from \"@cruk/cruk-react-components\";\n\nimport { type PageType } from \"@fwa/src/types\";\n\nconst EditablePageTitleForm = dynamic(\n () => import(\"@fwa/src/components/EditablePageTitleForm\"),\n);\n\nconst TitleBox = styled(Box)<{\n theme: ThemeType;\n}>`\n padding: ${({ theme }) => theme.spacing.s};\n display: block;\n\n @media (min-width: ${({ theme }) => theme.breakpoint.desktop}) {\n display: inline-block;\n margin-bottom: 0;\n }\n`;\n\nexport const TitleWrapper = styled.span<{\n theme: ThemeType;\n}>`\n margin: 0;\n\n @media (min-width: ${({ theme }) => theme.breakpoint.desktop}) {\n margin-top: ${({ theme }) => `calc(${theme.spacing.xl} * 1.5 * -1)`};\n margin-left: ${({ theme }) => theme.spacing.s};\n margin-bottom: ${({ theme }) => theme.spacing.m};\n max-width: 700px;\n width: auto;\n z-index: 1;\n }\n`;\n\nexport const PageTitle = ({\n page,\n canEdit,\n isTeam = false,\n updateAndMutatePage,\n}: {\n page: PageType;\n canEdit: boolean;\n isTeam?: boolean;\n updateAndMutatePage: (\n data: Partial,\n refresh?: boolean,\n ) => Promise;\n}) => {\n if (!page) return null;\n\n return (\n \n \n {canEdit ? (\n \n ) : (\n \n {page.title}\n \n )}\n \n \n );\n};\n\nexport default PageTitle;\n","import { type ReactNode, memo } from \"react\";\nimport styled, { keyframes, css } from \"styled-components\";\nimport { IconFa } from \"@cruk/cruk-react-components\";\nimport { faSnowflake } from \"@fortawesome/free-solid-svg-icons\";\nimport { faCanadianMapleLeaf } from \"@fortawesome/free-brands-svg-icons\";\n\nconst batGif = \"/assets/images/img/bat.gif\";\n\nconst getRandomInt = (min: number, max: number): number => {\n const minInt = Math.ceil(min);\n const maxInt = Math.floor(max);\n return Math.floor(Math.random() * (maxInt - minInt) + minInt); // The maximum is exclusive and the minimum is inclusive\n};\n\nconst now = new Date();\nconst isWinterSeason = now.getMonth() === 11 && now.getDate() > 18;\nconst isAutumnSeason = now.getMonth() === 9 && now.getDate() > 14;\n\nconst numberArray = (size: number) => Array.from(Array(size).keys());\n\nconst SeasonalWrapper = styled.div`\n pointer-events: none;\n position: absolute;\n left: 0;\n width: 100%;\n top: 0;\n height: 100%;\n z-index: 100;\n overflow: hidden;\n`;\n\nconst SnowFlakeWrapper = styled.div`\n pointer-events: none;\n position: absolute;\n width: 10px;\n height: 10px;\n border-radius: 50%;\n color: #c9e7ff;\n\n ${numberArray(200).map((index) => {\n const randomX = getRandomInt(0, 100); // vw\n const randomOffset = getRandomInt(-10, 10); // vw\n const randomXEndYoyo = randomX + randomOffset / 2; // vw\n const randomScale = Math.random();\n const fallDuration = getRandomInt(10, 30); // s\n const fallDelay = getRandomInt(0, 30) * -1; // s\n const randomXVw = `${randomX}vw`;\n const randomXEndYoyoVw = `${randomXEndYoyo}vw`;\n const randomRotation = `${360 * randomScale}deg`;\n\n const fall = keyframes`\n to {\n transform: translate(${randomXEndYoyoVw}, 100vh) scale(${randomScale});\n }\n `;\n\n const animationRule = css(\n [\n \"\",\n ` ${fallDuration}s ${fallDelay}s linear infinite;`,\n ] as unknown as TemplateStringsArray,\n fall,\n );\n\n return css`\n &:nth-child(${index + 1}) {\n opacity: calc(${getRandomInt(0, 100)} * 0.01);\n transform: translate(${randomXVw}, -10px) scale(${randomScale})\n rotate(${randomRotation});\n animation: ${animationRule};\n }\n `;\n })};\n`;\n\nconst brown = \"#A52A2A\";\nconst chocolate = \"##D2691E\";\nconst goldernRod = \"#DAA520\";\n\nconst autumnColors = [brown, chocolate, goldernRod];\n\nconst LeafWrapper = styled.div`\n pointer-events: none;\n perspective: 1000px;\n position: absolute;\n width: 50px;\n height: 50px;\n border-radius: 50%;\n color: ${autumnColors[0]};\n ${numberArray(40).map((index) => {\n const randomX = getRandomInt(10, 90); // vw\n const randomYRotation = `${360 * getRandomInt(2, 10)}deg`;\n const randomOffset = getRandomInt(-10, 10); // vw\n const randomXEndYoyo = randomX + randomOffset / 2; // vw\n const randomScale = Math.random();\n const fallDuration = getRandomInt(6, 15); // s\n const fallDelay = getRandomInt(1, 10); // s\n const randomXVw = `${randomX}vw`;\n const randomXEndYoyoVw = `${randomXEndYoyo}vw`;\n const randomRotation = `${360 * randomScale}deg`;\n\n const fall = keyframes`\n to {\n transform: translate(${randomXEndYoyoVw}, 100vh) translateZ(${randomXEndYoyoVw}) scale(${randomScale}) rotateY(${randomYRotation});\n }\n `;\n\n const animationRule = css(\n [\n \"\",\n ` ${fallDuration}s ${fallDelay}s linear normal;`,\n ] as unknown as TemplateStringsArray,\n fall,\n );\n\n return css`\n &:nth-child(${index + 1}) {\n color: ${autumnColors[getRandomInt(0, autumnColors.length)]};\n transform: translate(${randomXVw}, -100px) translateZ(0)\n scale(${1 + randomScale}) rotate(${randomRotation})\n rotateY(${randomYRotation});\n animation: ${animationRule};\n transform-style: preserve-3d;\n }\n `;\n })};\n`;\n\nconst flyRight = keyframes`\n to {\n transform: translate(-100vw, 0vh)\n }\n `;\n\nconst BatImage = styled.img`\n pointer-events: none;\n position: absolute;\n height: 50px;\n width: 50px;\n transform: translate(100vw, 5vh);\n animation: ${flyRight} 20s 5s forwards;\n`;\n\nconst SnowFlake = () => (\n \n \n \n);\nconst SnowFlakes = () => (\n \n {numberArray(200).map((item) => (\n \n ))}\n \n);\n\nconst Leaf = () => (\n \n \n \n);\nconst Bat = () => ;\nconst Leaves = () => (\n \n {numberArray(40).map((item) => (\n \n ))}\n \n \n);\n\nconst MemoizedSnowFlakes = memo(SnowFlakes);\nconst MemoizedLeaves = memo(Leaves);\n\ntype Props = {\n children: ReactNode;\n};\n\nexport const Seasonal = ({ children }: Props) =>\n isWinterSeason ? (\n
\n \n {children}\n
\n ) : isAutumnSeason ? (\n
\n \n {children}\n
\n ) : (\n
{children}
\n );\n\nexport default Seasonal;\n","import { Text, Box, Heading } from \"@cruk/cruk-react-components\";\n\nimport { formatMoneyWithCommas } from \"@fwa/src/utils/formatUtils\";\n\nimport { RowStretch } from \"@fwa/src/components/styles\";\n\ntype Props = {\n donationsTotalAmount: number;\n donationsTotalAmountFake: number;\n donationsTotalAmountFacebook: number;\n};\n\nexport const TotalsSection = ({\n donationsTotalAmount,\n donationsTotalAmountFake,\n donationsTotalAmountFacebook,\n}: Props) => (\n \n \n \n \n Total raised\n \n \n £{formatMoneyWithCommas(donationsTotalAmount)}\n \n \n \n \n \n \n Online\n \n \n £\n {formatMoneyWithCommas(\n donationsTotalAmount - donationsTotalAmountFake,\n )}\n \n \n \n \n \n \n Offline\n \n \n £{formatMoneyWithCommas(donationsTotalAmountFake)}\n \n \n \n\n {!!donationsTotalAmountFacebook && (\n \n \n \n Facebook\n \n \n £{formatMoneyWithCommas(donationsTotalAmountFacebook)}\n \n \n \n )}\n \n With Cancer Research UK Giving Pages more of the money raised goes towards\n beating cancer. Aside from the credit and debit card fees, every penny\n donated goes to Cancer Research UK.\n \n \n All donations made to this page will automatically be transferred to\n Cancer Research UK.\n \n \n);\n\nexport default TotalsSection;\n"],"names":["EditableWrapper","styled","div","$editButtonPosition","$fadeOnHover","theme","spacing","s","$editButtonMarginRight","$editButtonBackgroundColor","colors","$editButtonColor","Editable","fieldName","viewNode","editNode","handleSubmit","handleCancel","isLoading","tooltip","editButtonColor","editButtonHidden","editButtonBackgroundColor","editButtonPosition","editButtonMarginRight","fullWidth","fadeOnHover","trackEventGtm","useTracking","activeSectionContext","setActiveSectionContext","useActiveSectionContext","isEditing","setIsEditing","useState","useEffect","activeSection","isActiveSection","useKey","doCancel","detectKeys","closeEnhancePageHighlight","Highlight","isHighlighted","Box","padding","role","aria-label","FormActions","isValid","onCancel","onSubmit","doSubmit","then","resData","event","undefined","camelToSnakeCase","catch","submitButtonType","title","toLocaleLowerCase","onClick","handleEditClicked","onKeyDown","handleEditClickedKeyDown","e","keyCode","key","preventDefault","tabIndex","data-cta-type","EditIconWrapper","IconFa","faIcon","faPenToSquare","fade","keyframes","StyledContainer","breakpoint","mobile","cancelLabel","submitLabel","onInvalid","Button","appearance","disabled","onMouseDown","handleCancelClick","type","handleSubmitClick","OverlayInlineEdit","HightLight","$fullWidth","dynamic","children","FocusLock","returnFocus","OnlyYou","textColor","marginBottom","Text","as","Row","marginRight","faEye","size","EditableHeaderImageForm","PageHeaderImage","page","canEdit","mutatePage","style","aspectRatio","data-component","uniqueId","pageId","handleEditData","data","currentHeaderImage","headerImage","Seasonal","HeaderImage","src","imagePathFromImageType","alt","width","height","TextResponsive","desktop","span","textDark","fallbackData","trackEventOptimizely","useOptimizelyContext","url","fwsUrlPageParentMemberships","currentPage","itemsPerPage","useSwrGet","fallbackResponse","revalidateOnMount","memberships","results","length","ActivityItemWrapper","ActivityItem","ActivityIconWrapper","$isEmpty","faPeopleGroup","filter","membership","map","index","team","parentPage","NextLink","href","replace","A","entityType","eventKey","cta","ActivityLink","$canEdit","EditablePageStoryForm","PageStory","updateAndMutatePage","isTeam","foundStory","story","fundraisingPageType","teamLeaderPage","id","backgroundColor","Heading","h2","textSize","paddingRight","margin","display","whiteSpace","EditablePageSubtitleForm","PageSubtitle","marginVertical","subtitle","marginTop","EditablePageTitleForm","TitleBox","TitleWrapper","xl","m","h1","wordBreak","getRandomInt","min","max","minInt","Math","ceil","floor","random","maxInt","now","Date","isWinterSeason","getMonth","getDate","isAutumnSeason","numberArray","Array","from","keys","SeasonalWrapper","SnowFlakeWrapper","randomX","randomOffset","randomScale","fallDuration","fallDelay","randomXVw","randomXEndYoyoVw","randomRotation","fall","animationRule","css","autumnColors","LeafWrapper","randomYRotation","randomXEndYoyo","flyRight","BatImage","img","SnowFlake","faSnowflake","Leaf","faCanadianMapleLeaf","Bat","batGif","MemoizedSnowFlakes","memo","item","MemoizedLeaves","position","TotalsSection","donationsTotalAmount","donationsTotalAmountFake","donationsTotalAmountFacebook","RowStretch","formatMoneyWithCommas"],"sourceRoot":"","ignoreList":[]}