{"version":3,"file":"js/878-d8155bdc257ae82407df.js","mappings":"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","sources":["webpack://housepoint-api/./app/javascript/components/assets/flags.js","webpack://housepoint-api/./app/javascript/components/atoms/Footer.jsx","webpack://housepoint-api/./app/javascript/components/atoms/LeaderboardWrapper.jsx","webpack://housepoint-api/./app/javascript/components/assets/backgrounds.js","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/BlackBackground.jsx","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/VideoBackground.jsx","webpack://housepoint-api/./app/javascript/components/hooks/useCameraPosition.jsx","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/Scene.jsx","webpack://housepoint-api/./app/javascript/components/utils/EightHousesLeaderboard.js","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/Chains.jsx","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/Fire.jsx","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/Cup.jsx","webpack://housepoint-api/./app/javascript/components/shaders/windVertexShader.js","webpack://housepoint-api/./app/javascript/components/shaders/windFragmentShader.js","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/Flag.jsx","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/Label.jsx","webpack://housepoint-api/./app/javascript/components/utils/getAddendum.js","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/Shield.jsx","webpack://housepoint-api/./app/javascript/components/molecules/Leaderboard/Banner.jsx","webpack://housepoint-api/./app/javascript/components/utils/Leaderboard.js","webpack://housepoint-api/./app/javascript/components/assets/student-flags/index.js","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/StudentFlag.jsx","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/Frame.jsx","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/FrameBackground.jsx","webpack://housepoint-api/./app/javascript/util/videoCrop.js","webpack://housepoint-api/./app/javascript/components/molecules/Leaderboard/Avatar.jsx","webpack://housepoint-api/./app/javascript/components/molecules/Leaderboard/StudentBanner.jsx","webpack://housepoint-api/./app/javascript/components/hooks/useFallingAnimation.jsx","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/FallingGroup.jsx","webpack://housepoint-api/./app/javascript/components/hooks/useDragonAnimation.js","webpack://housepoint-api/./app/javascript/components/hooks/useFirstPositionAnimation.jsx","webpack://housepoint-api/./app/javascript/components/atoms/Leaderboard/SubtitleBanner.jsx","webpack://housepoint-api/./app/javascript/components/organisms/Leaderboard/BaseLeaderboard.jsx","webpack://housepoint-api/./app/javascript/components/organisms/Leaderboard/EightHousesLeaderboard.jsx","webpack://housepoint-api/./app/javascript/components/utils/FiveHousesLeaderboard.js","webpack://housepoint-api/./app/javascript/components/organisms/Leaderboard/FiveHousesLeaderboard.jsx","webpack://housepoint-api/./app/javascript/components/utils/FourHousesLeaderboard.js","webpack://housepoint-api/./app/javascript/components/organisms/Leaderboard/FourHousesLeaderboard.jsx","webpack://housepoint-api/./app/javascript/components/utils/GlobalLeaderboard.js","webpack://housepoint-api/./app/javascript/components/organisms/Leaderboard/GlobalLeaderboard.jsx","webpack://housepoint-api/./app/javascript/components/utils/SevenHousesLeaderboard.js","webpack://housepoint-api/./app/javascript/components/organisms/Leaderboard/SevenHousesLeaderboard.jsx","webpack://housepoint-api/./app/javascript/components/utils/SixHousesLeaderboard.js","webpack://housepoint-api/./app/javascript/components/organisms/Leaderboard/SixHousesLeaderboard.jsx","webpack://housepoint-api/./app/javascript/components/layouts/Leaderboard/index.jsx","webpack://housepoint-api/./app/javascript/util/hooks.js","webpack://housepoint-api/./app/javascript/util/request.js","webpack://housepoint-api/./node_modules/moment/locale/ sync ^\\.\\/.*$"],"sourcesContent":["const flagTextures = {\n black:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953816/leaderboard/House%20Flags/Black.png\",\n blue: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953824/leaderboard/House%20Flags/Blue.png\",\n green:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953821/leaderboard/House%20Flags/Green.png\",\n grey: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1697146834/leaderboard/House%20Flags/grey.png\",\n orange:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953820/leaderboard/House%20Flags/Orange.png\",\n purple:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953816/leaderboard/House%20Flags/Purple.png\",\n red: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953822/leaderboard/House%20Flags/Red.png\",\n teal: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953826/leaderboard/House%20Flags/Teal.png\",\n yellow:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953824/leaderboard/House%20Flags/Yellow.png\",\n white:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1697146834/leaderboard/House%20Flags/white.png\",\n};\n\nconst flagTexturesGold = {\n black:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546335/leaderboard/House%20Flags/Black_gold.png\",\n blue: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546351/leaderboard/House%20Flags/Blue_gold.png\",\n green:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546351/leaderboard/House%20Flags/Green_gold.png\",\n grey: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1697145935/leaderboard/House%20Flags/pr5aic7t2upvpdatznmp.png\",\n orange:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546348/leaderboard/House%20Flags/Orange_gold.png\",\n purple:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546352/leaderboard/House%20Flags/Purple_gold.png\",\n red: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546354/leaderboard/House%20Flags/Red_gold.png\",\n teal: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546350/leaderboard/House%20Flags/Teal_gold.png\",\n yellow:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546353/leaderboard/House%20Flags/Yellow_gold.png\",\n white:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1697145935/leaderboard/House%20Flags/z1qqkedldfahvygqjsuo.png\",\n};\n\n// * cup flame\nexport const colors = {\n black: 0x494949,\n blue: 0x0f2347,\n green: 0x16492a,\n grey: 0xacbacb,\n none: 0x000000,\n orange: 0x4d3e0a,\n purple: 0x402a5a,\n red: 0x410d00,\n teal: 0x3c5b41,\n yellow: 0x4f4d0f,\n white: 0xf5f5f5,\n};\n\n// * student background\nexport const backgroundColors = {\n black: \"#4B4B4B\",\n blue: \"#2F44A7\",\n green: \"#048120\",\n grey: \"#ACBACB\",\n orange: \"#C75200\",\n purple: \"#862c94\",\n red: \"#B00C0C\",\n teal: \"#178C8C\",\n yellow: \"#DAB901\",\n white: \"#F5F5F5\",\n};\n\nexport const cupImage =\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1678293211/leaderboard/House%20Flags/cup.png\";\n\nexport default flagTextures;\nexport { flagTexturesGold };\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport moment from \"moment\";\n\nconst Container = styled.div`\n position: ${(props) => (props.fixed ? \"fixed\" : \"relative\")};\n display: flex;\n bottom: 0;\n width: 100%;\n margin-top: auto;\n align-items: center;\n justify-content: center;\n z-index: 10;\n`;\n\nconst CopyrightText = styled.div`\n font-family: \"Poppins\";\n font-style: normal;\n font-weight: 400;\n font-size: 14px;\n line-height: 20px;\n color: ${(props) => (props.darkMode ? \"#FFF\" : \"#000\")};\n padding: 24px;\n`;\n\nconst Footer = ({ darkMode, fixed }) => (\n \n \n Copyright © {moment().year()} The Ron Clark Academy. All rights\n reserved.\n \n \n);\n\nexport default Footer;\n","import React from \"react\";\nimport styled from 'styled-components';\n\nconst LeaderboardWrapper = styled.div`\n height: 100vh;\n width: 100vw;\n`;\n\nexport default LeaderboardWrapper;\n","const textures = {\n blue: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/q_auto/f_auto/v1674674616/leaderboard/House%20Backgrounds/Reveur.png\",\n red: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/q_auto/f_auto/v1674674517/leaderboard/House%20Backgrounds/Amistades.png\",\n yellow:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/q_auto/f_auto/v1674674578/leaderboard/House%20Backgrounds/Sollevare.png\",\n orange:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/q_auto/f_auto/v1674674602/leaderboard/House%20Backgrounds/Onraka.png\",\n green:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/q_auto/f_auto/v1674674481/leaderboard/House%20Backgrounds/Isibindi.png\",\n purple:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/q_auto/f_auto/v1674674477/leaderboard/House%20Backgrounds/Nukumori.png\",\n teal: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/q_auto/f_auto/v1674674589/leaderboard/House%20Backgrounds/Protos.png\",\n black:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/q_auto/f_auto/v1674674455/leaderboard/House%20Backgrounds/Altruismo.png\",\n white:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/q_auto/f_auto/v1674674535/leaderboard/House%20Backgrounds/White.png\",\n grey: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/q_auto/f_auto/v1674674532/leaderboard/House%20Backgrounds/Grey.png\",\n};\n\nexport default textures;\n","import React, { useRef } from \"react\";\nimport { useSpring, a } from \"@react-spring/three\";\nimport { useFrame } from \"@react-three/fiber\";\n\nconst BlackBackground = ({ show }) => {\n const meshRef = useRef();\n const { opacity: springOpacity } = useSpring({\n from: { opacity: show ? 0 : 1 },\n to: { opacity: show ? 1 : 0 },\n config: { duration: 800 },\n });\n\n const updateOpacity = (newOpacity) => {\n if (meshRef.current.material.uniforms.opacity.value !== newOpacity) {\n meshRef.current.material.uniforms.opacity.value = newOpacity;\n }\n };\n\n useFrame(() => {\n const newOpacity = Math.round(springOpacity.get() * 100) / 100;\n updateOpacity(newOpacity);\n });\n\n return (\n \n \n \n \n );\n};\n\nexport default BlackBackground;\n","import React, { useMemo, useEffect } from \"react\";\nimport * as THREE from \"three\";\n\nconst VideoBackground = ({ playing, src }) => {\n const getMaterial = () => {\n const video = document.createElement(\"video\");\n video.muted = true;\n video.autoplay = false;\n video.src = src;\n video.crossOrigin = \"anonymous\";\n\n const videoTexture = new THREE.VideoTexture(video);\n videoTexture.encoding = THREE.sRGBEncoding;\n const material = new THREE.MeshBasicMaterial({ map: videoTexture });\n return { material, video };\n };\n\n const { material, video } = useMemo(getMaterial, []);\n\n useEffect(() => {\n if (!playing) return;\n video.play();\n }, [playing]);\n\n useEffect(() => {\n document.addEventListener(\"click\", () => {\n video.muted = false;\n });\n return () => {\n document.removeEventListener(\"click\", null);\n };\n }, []);\n\n return (\n \n \n \n );\n};\n\nexport default VideoBackground;\n","import { useState, useEffect } from \"react\";\nimport { useWindowSize } from \"../../util/hooks\";\n\nconst useCameraPosition = () => {\n const [cameraPosition, setCameraPosition] = useState([0, 0, 5.5]);\n const handleResize = () => {\n const aspectRatio = window.innerWidth / window.innerHeight;\n const offset = 2 - aspectRatio;\n if (offset < 0) return;\n const zPosition = 5.5 + offset * 2;\n setCameraPosition([0, 0, zPosition]);\n };\n const size = useWindowSize();\n useEffect(() => {\n handleResize();\n }, [size]);\n\n return { cameraPosition };\n};\n\nexport default useCameraPosition;\n","import React, { useState, useMemo, Suspense } from \"react\";\nimport * as THREE from \"three\";\nimport { Canvas, extend, useThree } from \"@react-three/fiber\";\nimport { Environment, PerformanceMonitor, Preload } from \"@react-three/drei\";\nimport textures from \"../../assets/backgrounds\";\nimport { fov } from \"../../layouts/Leaderboard\";\nimport { TextGeometry } from \"three/examples/jsm/geometries/TextGeometry\";\nimport BlackBackground from \"./BlackBackground\";\nimport { TextureLoader } from \"../../layouts/Leaderboard\";\nimport VideoBackground from \"./VideoBackground\";\nimport useCameraPosition from \"../../hooks/useCameraPosition\";\nextend({ TextGeometry });\n\nconst DRAGON_FIRE_URL =\n \"https://res.cloudinary.com/the-ron-clark-academy/video/upload/f_auto,q_auto/v1667237452/media/video/DragonFireFullFlames.mp4\";\n\nconst Lights = () => {\n return ;\n};\n\nconst CameraControl = ({ cameraPosition: [x, y, z] }) => {\n useThree(({ camera }) => {\n camera.position.set(x, y, z);\n });\n};\n\nconst Scene = ({\n children,\n playingVideo,\n background,\n backgroundBlack,\n hideBackgroundBlack,\n}) => {\n const [dpr, setDpr] = useState(window?.devicePixelRatio || 2);\n const { cameraPosition } = useCameraPosition();\n const bgTexture = textures?.[background];\n const backgroundMap = useMemo(\n () => TextureLoader.load(bgTexture),\n [background]\n );\n backgroundMap.encoding = THREE.sRGBEncoding;\n const updateDpr = (e) => {\n const minDpr = window?.devicePixelRatio >= 1.5 ? 1.5 : 1.25;\n setDpr((prevDpr) => Math.max(minDpr, prevDpr * e.factor));\n };\n\n return (\n \n \n \n \n \n \n {!hideBackgroundBlack && }\n \n {children}\n \n [30, 60]}\n />\n \n );\n};\n\nexport default Scene;\n","const positionsByRanking = {\n 1: { x: 0.05, y: -0.025, z: 0.15 },\n 2: { x: 1.15, y: 0, z: -0.15 },\n 3: { x: -1.15, y: 0, z: -0.15 },\n 4: { x: 2.3, y: -0.05, z: -0.3 },\n 5: { x: -2.3, y: -0.05, z: -0.3 },\n 6: { x: 3.4, y: -0.075, z: -0.5 },\n 7: { x: -3.4, y: -0.075, z: -0.5 },\n 8: { x: 4.6, y: -0.1, z: -0.7 },\n};\n\nconst studentPositionByRanking = {\n 1: { x: 0.05, y: -1.65, z: 0.15 },\n 2: { x: 1.15, y: -1.75, z: -0.15 },\n 3: { x: -1.15, y: -1.75, z: -0.15 },\n 4: { x: 2.3, y: -1.85, z: -0.3 },\n 5: { x: -2.3, y: -1.85, z: -0.3 },\n 6: { x: 3.5, y: -1.95, z: -0.5 },\n 7: { x: -3.5, y: -1.95, z: -0.5 },\n 8: { x: 4.8, y: -2.05, z: -0.7 },\n};\n\nexport { positionsByRanking, studentPositionByRanking };\n","import React, { useMemo } from \"react\";\nimport ChainsSilver from \"../../assets/silver-chain.png\";\nimport ChainsGold from \"../../assets/gold-chain.png\";\nimport { TextureLoader } from \"../../layouts/Leaderboard\";\n\nconst Chains = ({ isGold, size = 0.045, positionX, positionY, positionZ }) => {\n const texture = isGold ? ChainsGold : ChainsSilver;\n const aspectRatio = 0.014;\n const imageMap = useMemo(() => TextureLoader.load(texture), [isGold]);\n return (\n \n \n \n \n );\n};\n\nexport default Chains;\n","import React, { useMemo } from \"react\";\nimport { useFrame } from \"@react-three/fiber\";\nimport * as THREE from \"three\";\nimport particleFire from \"three-particle-fire\";\nimport { colors } from \"../../assets/flags\";\n\nparticleFire.install({ THREE: THREE });\n\nconst fireRadius = 0.1;\nconst fireHeight = 0.3;\nconst particleCount = 2000;\n\nconst Fire = ({ color, positionY, ...props }) => {\n const clock = useMemo(() => new THREE.Clock(), []);\n const fireGeometry = useMemo(\n () => new particleFire.Geometry(fireRadius, fireHeight, particleCount),\n [fireRadius, fireHeight, particleCount]\n );\n const material = useMemo(\n () => new particleFire.Material({ color: colors[color] }),\n [color]\n );\n\n useFrame(() => {\n if (!clock) return;\n const delta = clock.getDelta();\n material.update(delta);\n });\n\n return (\n \n );\n};\n\nexport default Fire;\n","import React, { useMemo } from \"react\";\nimport { cupImage } from \"../../assets/flags\";\nimport Fire from \"./Fire\";\nimport { TextureLoader } from \"../../layouts/Leaderboard\";\n\nconst cropImage = (url) => url.replace(\"/upload/\", \"/upload/w_500,h_500,q_80/\");\n\nconst Cup = ({ fire, color }) => {\n const texture = cropImage(cupImage);\n const imageMap = useMemo(() => TextureLoader.load(texture), []);\n return (\n \n \n \n {fire && }\n \n );\n};\n\nexport default Cup;\n","const vertexShader = `\n\nuniform float u_time;\nvarying float vZ;\n\nvarying vec2 vUv;\nuniform sampler2D texture;\n\nvoid main() {\n vUv = uv;\n vec4 modelPosition = modelMatrix * vec4(position, 1.0);\n\n modelPosition.z += (\n sin((position.y + position.x) * 4.0 + u_time * 1.15)\n + sin((position.y + position.z) * 5.0 + u_time * 1.15)\n ) * 0.0015;\n\n vec4 viewPosition = viewMatrix * modelPosition;\n vec4 projectedPosition = projectionMatrix * viewPosition;\n\n vZ = modelPosition.z;\n gl_Position = projectedPosition;\n}\n\n`;\n\nexport default vertexShader;\n","const fragmentShader = `\nuniform sampler2D map;\nuniform float u_shadowStrength;\nuniform float u_zBase;\n\nvarying float vZ;\nvarying vec2 vUv;\n\nvoid main() {\n vec4 texelColor = texture2D(map, vUv);\n // above 1 -> brightness\n // Under 1 -> shadow\n\n float distance = abs(vZ - u_zBase);\n /*\n > 1 => brightness\n < 1 => shadow\n */\n float shadow = 1.0 - smoothstep(0.0, 0.5, distance * 51.0);\n vec3 darkColor = texelColor.rgb * shadow;\n gl_FragColor = vec4(darkColor, texelColor.a);\n}\n`;\n\nexport default fragmentShader;\n","import React from \"react\";\nimport { useFrame } from \"@react-three/fiber\";\nimport stickImage from \"../../assets/flag_stick.png\";\nimport flagTextures, { flagTexturesGold } from \"../../assets/flags\";\nimport { useMemo, useRef } from \"react\";\nimport vertexShader from \"../../shaders/windVertexShader\";\nimport fragmentShader from \"../../shaders/windFragmentShader\";\nimport { TextureLoader } from \"../../layouts/Leaderboard\";\n\nconst cropImage = (url) => url.replace(\"/upload/\", \"/upload/w_528,h_546,q_80/\");\nconst cropStickImage = (url) =>\n url.replace(\"/upload/\", \"/upload/w_509,h_49,q_80/\");\n\nconst Flag = ({ baseZ, color, isGold, wind, children }) => {\n const textures = useMemo(\n () => (isGold ? flagTexturesGold : flagTextures),\n [isGold]\n );\n const mesh = useRef();\n const texture = cropImage(textures[color]);\n const stickTexture = cropStickImage(stickImage);\n const imageMap = useMemo(() => TextureLoader.load(texture), [color, isGold]);\n const stickMap = useMemo(() => TextureLoader.load(stickTexture), []);\n\n useFrame((state) => {\n if (!wind) return;\n const { clock } = state;\n mesh.current.material.uniforms.u_time.value = clock.getElapsedTime();\n });\n\n const uniforms = useMemo(\n () => ({\n u_time: {\n value: 0.0,\n },\n map: { value: imageMap },\n u_shadowStrength: { value: 0.1 },\n u_zBase: { value: baseZ },\n }),\n [color, isGold]\n );\n\n return (\n \n \n \n \n \n \n \n \n \n {children}\n \n );\n};\n\nexport default Flag;\n","import React, { useState, useRef, useEffect } from \"react\";\nimport * as THREE from \"three\";\nimport { FontLoader } from \"three/examples/jsm/loaders/FontLoader\";\nimport { stdFont } from \"../../assets/fonts\";\n\nconst Label = ({\n positionY,\n positionX,\n fontSize,\n text,\n show = true,\n maximumLength,\n maxWidth = 2,\n}) => {\n const scaledFontSize = fontSize / 680;\n const textRef = useRef(null);\n const font = new FontLoader().parse(stdFont);\n const [dynamicSize, setDynamicSize] = useState(scaledFontSize);\n const [offset, setOffset] = useState(0);\n const [width, setWidth] = useState(0);\n\n useEffect(() => {\n const bbox = new THREE.Box3().setFromObject(textRef.current);\n const bboxSize = new THREE.Vector3(bbox);\n const { x: newWidth } = bbox.getSize(bboxSize);\n if (!newWidth) return;\n setWidth(newWidth);\n const newDynamicSize = dynamicSize - (newWidth - maxWidth) / 10;\n if (newDynamicSize <= scaledFontSize) setDynamicSize(newDynamicSize);\n }, [text]);\n\n useEffect(() => {\n const bbox = new THREE.Box3().setFromObject(textRef.current);\n const bboxSize = new THREE.Vector3(bbox);\n const { x: width } = bbox.getSize(bboxSize);\n setOffset(width / 2);\n }, [width]);\n\n const labelText =\n maximumLength && text?.length > maximumLength\n ? text.substring(0, maximumLength) + \"...\"\n : text;\n return (\n \n \n \n \n \n \n );\n};\n\nexport default Label;\n","const getAddendum = (number) => {\n switch (number) {\n case 1:\n return \"ST\";\n case 2:\n return \"ND\";\n case 3:\n return \"RD\";\n case 4:\n case 5:\n case 6:\n case 7:\n case 8:\n case 9:\n return \"TH\";\n default:\n return \"\";\n }\n};\n\nexport default getAddendum;\n","import React, { useMemo } from \"react\";\nimport { useFrame } from \"@react-three/fiber\";\nimport * as THREE from \"three\";\nimport { useRef } from \"react\";\nimport vertexShader from \"../../shaders/windVertexShader\";\nimport fragmentShader from \"../../shaders/windFragmentShader\";\nimport { TextureLoader } from \"../../layouts/Leaderboard\";\n\nconst SIZE = 4;\nconst TIME_OFFSET = 1.6;\n\nconst cropImage = (url) => url.replace(\"/upload/\", \"/upload/w_296,h_296,q_80/\");\n\nconst Shield = ({\n color,\n positionY,\n positionX,\n baseZ,\n wind,\n show,\n houseLogo,\n}) => {\n const texture = houseLogo && cropImage(houseLogo);\n const imageMap = TextureLoader.load(texture);\n const [width, height] = [400, 400];\n const aspectRatio = width / height;\n const geometry = useMemo(\n () => new THREE.PlaneGeometry(0.3, 0.3 / aspectRatio, SIZE, SIZE),\n []\n );\n const mesh = useRef(null);\n const zOffset = 0.015;\n\n useFrame((state) => {\n if (!wind) return;\n const { clock } = state;\n mesh.current.material.uniforms.u_time.value =\n clock.getElapsedTime() + TIME_OFFSET;\n });\n\n const uniforms = useMemo(\n () => ({\n u_time: {\n value: 0.0,\n },\n map: { value: imageMap },\n u_shadowStrength: { value: 0.1 },\n u_zBase: { value: baseZ + zOffset },\n }),\n [color]\n );\n\n return (\n \n \n \n );\n};\n\nexport default Shield;\n","import React, { useRef, useMemo } from \"react\";\nimport { useFrame } from \"@react-three/fiber\";\nimport Chains from \"../../atoms/Leaderboard/Chains\";\nimport Cup from \"../../atoms/Leaderboard/Cup\";\nimport Flag from \"../../atoms/Leaderboard/Flag\";\nimport Label from \"../../atoms/Leaderboard/Label\";\nimport getAddendum from \"../../utils/getAddendum\";\nimport Shield from \"../../atoms/Leaderboard/Shield\";\nimport { MathUtils } from \"three\";\n\nconst Banner = ({\n position: p,\n ranking,\n fire = true,\n house,\n chains,\n isGold,\n color,\n points,\n shield = true,\n wind = true,\n baseZ = 3.5,\n show = true,\n swing = {\n distance: 0.0075,\n speed: 1.25,\n },\n houseLogo,\n ...props\n}) => {\n const meshRef = useRef();\n const initialPhaseRand = useMemo(() => Math.random() * Math.PI * 2, []);\n useFrame((state) => {\n const speed = MathUtils.lerp(1.25, swing.speed, 0.5);\n const distance = MathUtils.lerp(0.0075, swing.distance, 0.75);\n const phase = state.clock.getElapsedTime() * speed + initialPhaseRand;\n const baseX = p[0];\n // Using state instead of modifying mesh position will cause flickering\n meshRef.current.position.x = baseX + Math.sin(phase) * distance;\n meshRef.current.rotation.z = (Math.sin(phase) * distance) / 10;\n });\n const displayShield =\n shield &&\n houseLogo &&\n houseLogo !==\n \"https://res.cloudinary.com/du1d2hfv3/image/upload/v1563771567/logo-default_b44fus.png\";\n\n return (\n \n {chains && (\n <>\n \n \n \n )}\n \n \n {ranking === 1 ? (\n <>\n \n \n ) : (\n <>\n \n \n \n )}\n {house && (\n \n )}\n {points && (\n \n )}\n \n \n \n \n );\n};\n\nexport default Banner;\n","const positionReducer = (positionsByRanking, u) => (acc, x) => {\n const pos = positionsByRanking[x.ranking];\n if (!pos) return acc;\n\n const position = {\n x: pos.x * u,\n y: pos.y * u,\n z: pos.z * u,\n };\n return [...acc, { ...x, position }];\n};\n\nconst positionBanners = ({ unit: u, banners, positions }) => {\n return banners.reduce(positionReducer(positions, u), []);\n};\n\nexport { positionBanners };\n","const textures = {\n black:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953877/leaderboard/Student%20Flags/Black_2.png\",\n blue: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953878/leaderboard/Student%20Flags/Blue_2.png\",\n green:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953879/leaderboard/Student%20Flags/Green_2.png\",\n grey: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1697146913/leaderboard/Student%20Flags/thnviecpzrvcapwntdjd.png\",\n orange:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953878/leaderboard/Student%20Flags/Orange_2.png\",\n purple:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953879/leaderboard/Student%20Flags/Purple_2.png\",\n red: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953884/leaderboard/Student%20Flags/Red_2.png\",\n teal: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953879/leaderboard/Student%20Flags/Teal_2.png\",\n yellow:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1672953880/leaderboard/Student%20Flags/Yellow_2.png\",\n white:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1697146913/leaderboard/Student%20Flags/szf15odqdl9vafnovyic.png\",\n};\n\nconst studentTexturesGold = {\n black:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546011/leaderboard/Student%20Flags/Black-2.png\",\n blue: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546021/leaderboard/Student%20Flags/Blue-2.png\",\n green:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546023/leaderboard/Student%20Flags/Green-2.png\",\n grey: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1697146751/leaderboard/Student%20Flags/vu8vof83goudf0qyqfme.png\",\n orange:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546020/leaderboard/Student%20Flags/Orange-2.png\",\n purple:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546024/leaderboard/Student%20Flags/Purple-2.png\",\n red: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546024/leaderboard/Student%20Flags/Red-2.png\",\n teal: \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546017/leaderboard/Student%20Flags/Teal-2.png\",\n yellow:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1673546022/leaderboard/Student%20Flags/Yellow-2.png\",\n white:\n \"https://res.cloudinary.com/the-ron-clark-academy/image/upload/v1697146751/leaderboard/Student%20Flags/sxntsdc6nipabuf25xsi.png\",\n};\n\nexport default textures;\nexport { studentTexturesGold };\n","import React, { useRef, useMemo } from \"react\";\nimport { useFrame } from \"@react-three/fiber\";\nimport stickImage from \"../../assets/flag_stick.png\";\nimport studentTextures, {\n studentTexturesGold,\n} from \"../../assets/student-flags\";\nimport vertexShader from \"../../shaders/windVertexShader\";\nimport fragmentShader from \"../../shaders/windFragmentShader\";\nimport { TextureLoader } from \"../../layouts/Leaderboard\";\n\nexport const size = 16;\nconst [width, height] = [400, 506];\nconst aspectRatio = width / height;\n\nconst cropImage = (url) => url.replace(\"/upload/\", \"/upload/w_400,h_506,q_80/\");\n\nconst cropStickImage = (url) =>\n url.replace(\"/upload/\", \"/upload/w_388,h_38,q_80/\");\n\nconst StudentFlag = ({ baseZ, isGold, color, wind, children }) => {\n const textures = isGold ? studentTexturesGold : studentTextures;\n const flagTexture = cropImage(textures[color]);\n const stickTexture = cropStickImage(stickImage);\n const imageMap = useMemo(() => TextureLoader.load(flagTexture), []);\n const stickMap = useMemo(() => TextureLoader.load(stickTexture), []);\n const mesh = useRef(null);\n\n useFrame((state) => {\n if (!wind) return;\n const { clock } = state;\n mesh.current.material.uniforms.u_time.value = clock.getElapsedTime();\n });\n\n const uniforms = useMemo(\n () => ({\n u_time: {\n value: 0.0,\n },\n map: { value: imageMap },\n u_zBase: { value: baseZ - 0.01 },\n }),\n [color, isGold]\n );\n\n return (\n \n \n \n \n \n \n \n \n \n {children}\n \n );\n};\n\nexport default StudentFlag;\n","import React, { useMemo } from \"react\";\nimport FrameSilver from \"../../assets/frames/frame-silver.png\";\nimport FrameGold from \"../../assets/frames/frame-gold.png\";\nimport { TextureLoader } from \"../../layouts/Leaderboard\";\n\nconst ASPECT_RATIO = 1;\n\nconst Frame = ({ isGold, size = 1.12 }) => {\n const imageMap = useMemo(\n () => TextureLoader.load(isGold ? FrameGold : FrameSilver),\n [isGold]\n );\n return (\n \n \n \n \n );\n};\n\nexport default Frame;\n","import React, { useMemo } from \"react\";\nimport * as THREE from \"three\";\nimport videoCrop from \"../../../util/videoCrop\";\nimport PT from \"prop-types\";\nimport { TextureLoader } from \"../../layouts/Leaderboard\";\nimport { backgroundColors } from \"../../assets/flags\";\nconst ASPECT_RATIO = 0.7;\nconst REPEAT_X = 1.625;\nconst REPEAT_Y = (REPEAT_X * 480) / 574;\n\nconst cropImage = (url) =>\n url.replace(\"/upload/\", \"/upload/w_296,ar_3:4,c_fill,g_auto/\");\n\nconst FrameBackground = ({ color, size = 0.8, studentImage, studentVideo }) => {\n const imageTexture = useMemo(\n () =>\n studentImage &&\n TextureLoader.load(cropImage(studentImage), (tex) => {\n tex.needsUpdate = true;\n\n // centers the image horizontally\n tex.offset.x = 0.5;\n // stretches the image horizontally\n tex.repeat.x = 2;\n // centers the image vertically\n tex.offset.y = 0.5;\n // stretches the image vertically\n tex.repeat.y = 1.4;\n tex.wrapS = THREE.ClampToEdgeWrapping;\n tex.wrapT = THREE.ClampToEdgeWrapping;\n tex.encoding = THREE.sRGBEncoding;\n }),\n [studentImage]\n );\n const mapVideo = (url) => {\n const video = document.createElement(\"video\");\n video.autoplay = true;\n video.loop = true;\n video.src = videoCrop(url);\n video.crossOrigin = \"anonymous\";\n video.muted = true;\n const newVideoTexture = new THREE.VideoTexture(video);\n newVideoTexture.offset.x = 0.5;\n newVideoTexture.repeat.x = REPEAT_X;\n newVideoTexture.offset.y = 0.5;\n newVideoTexture.repeat.y = REPEAT_Y;\n newVideoTexture.wrapS = THREE.ClampToEdgeWrapping;\n newVideoTexture.wrapT = THREE.ClampToEdgeWrapping;\n newVideoTexture.encoding = THREE.sRGBEncoding;\n\n video.addEventListener(\"loadeddata\", () => {\n video.play();\n newVideoTexture.needsUpdate = true;\n });\n return newVideoTexture;\n };\n\n const videoTexture = useMemo(\n () => studentVideo && mapVideo(studentVideo),\n [studentVideo]\n );\n\n const roundedRectShape = useMemo(() => new THREE.Shape(), []);\n\n (function roundedRect(ctx, x, y, width, height, radius) {\n ctx.moveTo(x, y + radius);\n ctx.lineTo(x, y + height - radius);\n ctx.quadraticCurveTo(x, y + height, x + radius, y + height);\n ctx.lineTo(x + width - radius, y + height);\n ctx.quadraticCurveTo(x + width, y + height, x + width, y + height - radius);\n ctx.lineTo(x + width, y + radius);\n ctx.quadraticCurveTo(x + width, y, x + width - radius, y);\n ctx.lineTo(x + radius, y);\n ctx.quadraticCurveTo(x, y, x, y + radius);\n })(\n roundedRectShape,\n -size / 3 - 0.015,\n -size / 3 - 0.07,\n size * ASPECT_RATIO,\n size,\n (size * ASPECT_RATIO) / 2\n );\n\n const getMaterial = () => ({\n color:\n !imageTexture && !videoTexture && (backgroundColors[color] || \"#2F44A7\"),\n map: studentVideo ? videoTexture : imageTexture,\n });\n const geometry = useMemo(() => new THREE.ShapeGeometry(roundedRectShape), []);\n const material = useMemo(\n () => new THREE.MeshBasicMaterial(getMaterial()),\n [studentVideo, imageTexture, color]\n );\n const mesh = useMemo(\n () => new THREE.Mesh(geometry, material),\n [geometry, material, color]\n );\n // eslint-disable-next-line react/no-unknown-property\n return ;\n};\n\nFrameBackground.propTypes = {\n color: PT.string,\n size: PT.number,\n studentImage: PT.string,\n studentVideo: PT.string,\n};\n\nexport default FrameBackground;\n","export default function videoCrop(videoUrl, width = 480, height = 574) {\n // add crop to the url param from cloudinary\n // replace /upload/ with /upload/c_crop,h_574,w_480/\n try {\n const url = new URL(videoUrl);\n url.pathname = url.pathname.replace(\n \"/upload/\",\n `/upload/w_${width},c_fill,g_auto,ar_${width}:${height}/ac_none/`\n );\n // if url does not end in .mp4, replace the extension with .mp4\n if (!url.pathname.match(/\\.mp4$/)) {\n url.pathname = url.pathname.replace(\n /\\.(mov|webm|wmv|avi|avchd)$/,\n \".mp4\"\n );\n }\n return url.href;\n } catch (e) {\n console.error(e);\n return videoUrl;\n }\n}\n","import React from \"react\";\nimport Frame from \"../../atoms/Leaderboard/Frame\";\nimport FrameBackground from \"../../atoms/Leaderboard/FrameBackground\";\nimport Label from \"../../atoms/Leaderboard/Label\";\n\nconst Avatar = ({\n isGold,\n color,\n studentVideo,\n studentImage,\n studentFirstName,\n studentLastName,\n}) => {\n const firstNameFirstLetter = String(studentFirstName[0] ?? \"\").toUpperCase();\n const lastNameFirstLetter = String(studentLastName[0] ?? \"\").toUpperCase();\n\n return (\n \n \n {!studentImage && !studentVideo && (\n \n )}\n \n \n );\n};\n\nexport default Avatar;\n","import React, { useRef, useMemo } from \"react\";\nimport { useFrame } from \"@react-three/fiber\";\nimport StudentFlag from \"../../atoms/Leaderboard/StudentFlag\";\nimport Label from \"../../atoms/Leaderboard/Label\";\nimport Chains from \"../../atoms/Leaderboard/Chains\";\nimport Avatar from \"./Avatar\";\n\nconst NoStudent = () => (\n \n \n);\n\nconst StudentBanner = ({\n baseZ,\n position: p,\n isGold,\n chains,\n color,\n points,\n wind = true,\n studentFirstName,\n studentLastName,\n studentImage,\n studentVideo,\n ...props\n}) => {\n const meshRef = useRef();\n const showStudent = studentFirstName || studentLastName;\n const initialPhaseRand = useMemo(() => Math.random() * Math.PI * 2, []);\n useFrame((state) => {\n const speed = 1.75;\n const phase = state.clock.getElapsedTime() * speed + initialPhaseRand;\n const distance = 0.0075;\n const baseX = p[0];\n // Using state instead of modifying mesh position will cause flickering\n meshRef.current.position.x = baseX + Math.sin(phase) * distance;\n meshRef.current.rotation.z = (Math.sin(phase) * distance) / 20;\n });\n\n const studentName = `${studentFirstName} ${\n studentLastName && studentLastName[0]\n }.`;\n return (\n \n {chains && (\n <>\n \n \n \n )}\n \n {showStudent ? (\n <>\n \n \n {studentFirstName && (\n \n )}\n {points && (\n \n )}\n \n \n ) : (\n \n )}\n \n \n );\n};\n\nexport default StudentBanner;\n","import { useSpring } from \"@react-spring/three\";\n\nconst useFallingAnimation = ({\n basePosition: b,\n displacement = 5,\n down,\n loading,\n}) => {\n const { pos } = useSpring({\n from: { pos: down ? [b[0], b[1] + displacement, b[2]] : b },\n to: { pos: down ? b : [b[0], b[1] + displacement, b[2]] },\n config: {\n mass: 10,\n tension: 300,\n friction: 90,\n duration: loading ? 0 : undefined,\n },\n });\n\n return { pos };\n};\n\nexport default useFallingAnimation;\n","import React from \"react\";\nimport { animated } from \"@react-spring/three\";\nimport useFallingAnimation from \"../../hooks/useFallingAnimation\";\n\nconst FallingGroup = ({ children, position, down, loading = false }) => {\n const { pos } = useFallingAnimation({\n basePosition: position,\n down,\n loading,\n });\n\n return {children};\n};\n\nexport default FallingGroup;\n","import { useTransition } from \"react\";\n\nexport const transitionPlayer = (startTransition) => (fn, delay) => {\n if (!delay)\n return startTransition(() => {\n fn();\n });\n setTimeout(() => {\n startTransition(() => {\n fn();\n });\n }, delay);\n};\n\nconst useDragonAnimation = ({\n setPlayingAnimation,\n setPlayingVideo,\n setDown,\n setBackgroundBlack,\n updateBanners,\n}) => {\n const [, startTransition] = useTransition();\n const playTransition = new transitionPlayer(startTransition);\n return () => {\n playTransition(() => {\n setBackgroundBlack(true);\n }, 0);\n playTransition(() => {\n setPlayingAnimation(true);\n setDown(false);\n }, 100);\n playTransition(() => {\n setPlayingVideo(true);\n }, 1500);\n playTransition(() => {\n setBackgroundBlack(false);\n }, 2000);\n playTransition(() => {\n updateBanners();\n }, 6400);\n playTransition(() => {\n setBackgroundBlack(true);\n }, 10700);\n playTransition(() => {\n setPlayingAnimation(false);\n setPlayingVideo(false);\n setDown(true);\n }, 11500);\n playTransition(() => {\n setBackgroundBlack(false);\n }, 11700);\n };\n};\n\nexport default useDragonAnimation;\n","import { useState, useEffect, useTransition } from \"react\";\nimport { useSpring } from \"@react-spring/three\";\nimport { transitionPlayer } from \"./useDragonAnimation\";\n/*\n STEP 0: Base position\n STEP 1: Down\n STEP 2: Down Right\n STEP 3: Down Right Hidden\n*/\nconst POSITIONS_BY_STEP = {\n 0: {\n from: { x: 0, y: 0 },\n to: { x: 0, y: 0 },\n },\n 1: {\n from: { x: 0, y: 0 },\n to: { x: 0, y: -0.65 },\n },\n 2: {\n from: { x: 0, y: -0.65 },\n to: { x: 1.5, y: -0.65 },\n },\n 3: {\n from: { x: 1.5, y: -0.65 },\n to: { x: 1.5, y: -0.65 },\n },\n};\n\nconst SWING_PHASES = {\n 0: {\n distance: 0.02,\n speed: 1.5,\n },\n 1: {\n distance: 0.2,\n speed: 2.5,\n },\n 2: {\n distance: 0.2,\n speed: 2.5,\n },\n};\n\nconst getAnimationByStep = (step, b) => ({\n from: {\n pos: [\n b.x + POSITIONS_BY_STEP[step].from.x,\n b.y + POSITIONS_BY_STEP[step].from.y,\n b.z,\n ],\n },\n to: {\n pos: [\n b.x + POSITIONS_BY_STEP[step].to.x,\n b.y + POSITIONS_BY_STEP[step].to.y,\n b.z,\n ],\n },\n});\n\nconst useFirstPositionAnimation = ({ basePosition: b, playing, setDown }) => {\n const [step, setStep] = useState(0);\n const [swingStep, setSwingStep] = useState(0);\n const [, startTransition] = useTransition();\n const [showFirstPlaceText, setShowFirstPlaceText] = useState(false);\n const playTransition = new transitionPlayer(startTransition);\n\n const { pos } = useSpring({\n ...getAnimationByStep(step, b),\n config: {\n mass: 10,\n tension: step === 2 ? 300 : 170,\n friction: step === 2 ? 100 : 70,\n duration: step === 3 ? 0 : undefined,\n },\n });\n\n const playAnimation = () => {\n playTransition(() => {\n setStep(1);\n setSwingStep(1);\n }, 100);\n playTransition(() => {\n setStep(2);\n }, 1800);\n playTransition(() => {\n setStep(3);\n }, 5400);\n playTransition(() => {\n setDown(false);\n }, 6450);\n playTransition(() => {\n setStep(1);\n }, 6600);\n playTransition(() => {\n setDown(true);\n setSwingStep(2);\n }, 7100);\n playTransition(() => {\n setShowFirstPlaceText(true);\n }, 8000);\n playTransition(() => {\n setShowFirstPlaceText(false);\n setStep(0);\n setSwingStep(0);\n }, 10900);\n };\n\n useEffect(() => {\n if (!playing) return;\n playAnimation();\n }, [playing]);\n\n const show = step !== 3;\n\n const swing = SWING_PHASES[swingStep];\n\n return { position: pos, show, swing, showFirstPlaceText };\n};\n\nexport default useFirstPositionAnimation;\n","import React, { useMemo } from \"react\";\nimport GlobalSubtitleBanner from \"../../assets/subtitle_banner_global.png\";\nimport SchoolSubtitleBanner from \"../../assets/subtitle_banner_school.png\";\nimport { TextureLoader } from \"../../layouts/Leaderboard\";\n\nconst SubtitleBanner = ({ global, position: p }) => {\n const imageMap = useMemo(\n () =>\n TextureLoader.load(global ? GlobalSubtitleBanner : SchoolSubtitleBanner),\n []\n );\n return (\n \n \n \n \n );\n};\n\nexport default SubtitleBanner;\n","import React, { useEffect, useState } from \"react\";\nimport { useThree } from \"@react-three/fiber\";\nimport { animated } from \"@react-spring/three\";\nimport Banner from \"../../molecules/Leaderboard/Banner\";\nimport { positionBanners } from \"../../utils/Leaderboard\";\nimport StudentBanner from \"../../molecules/Leaderboard/StudentBanner\";\nimport FallingGroup from \"../../atoms/Leaderboard/FallingGroup\";\nimport Label from \"../../atoms/Leaderboard/Label\";\nimport useFirstPositionAnimation from \"../../hooks/useFirstPositionAnimation\";\nimport SubtitleBanner from \"../../atoms/Leaderboard/SubtitleBanner\";\n\nconst BaseLeaderboard = ({\n banners = [],\n students = [],\n wind,\n positionsByRanking,\n studentPositionByRanking,\n unit,\n basePosition,\n studentsBasePosition,\n playingAnimation,\n down,\n loading = false,\n baseSubtitlePosition = 0.2,\n}) => {\n const { height } = useThree((state) => state.viewport);\n const [firstBannerDown, setFirstBannerDown] = useState(false);\n const [playingFirstPosAnimation, setPlayingFirstPosAnimation] =\n useState(false);\n const [firstBanner, ...positionedBanners] = positionBanners({\n unit,\n banners,\n positions: positionsByRanking,\n });\n const {\n position: firstBannerPosition,\n show: showFirstBanner,\n swing,\n showFirstPlaceText,\n } = useFirstPositionAnimation({\n playing: playingFirstPosAnimation,\n basePosition: firstBanner.position,\n setDown: setFirstBannerDown,\n });\n\n const positionedStudentBanners = positionBanners({\n unit,\n banners: students,\n positions: studentPositionByRanking,\n });\n\n const playFirstPositionAnimation = () => {\n setPlayingFirstPosAnimation(true);\n };\n\n useEffect(() => {\n if (!playingAnimation) return setPlayingFirstPosAnimation(false);\n\n playFirstPositionAnimation();\n }, [playingAnimation]);\n\n useEffect(() => {\n if (!loading) setFirstBannerDown(true);\n }, [loading]);\n\n return (\n <>\n \n \n \n {!playingAnimation && (\n \n )}\n \n \n \n \n \n \n {positionedBanners.map(({ position: p, ...props }) => (\n \n ))}\n \n \n {positionedStudentBanners.map(({ position: p, ...props }) => (\n \n ))}\n \n \n );\n};\n\nexport default BaseLeaderboard;\n","import React from \"react\";\nimport {\n positionsByRanking,\n studentPositionByRanking,\n} from \"../../utils/EightHousesLeaderboard\";\nimport BaseLeaderboard from \"./BaseLeaderboard\";\n\nconst EightHousesLeaderboard = (props) => {\n const unit = 0.67;\n const basePosition = [-0.35, 0.55, 3.3];\n const studentsBasePosition = [-0.35, 0.4, 3.2];\n\n return (\n \n );\n};\n\nexport default EightHousesLeaderboard;\n","const positionsByRanking = {\n 1: { x: 0, y: -0.05, z: 0 },\n 2: { x: 1.25, y: -0.075, z: -0.15 },\n 3: { x: -1.25, y: -0.075, z: -0.15 },\n 4: { x: 2.55, y: -0.075, z: -0.3 },\n 5: { x: -2.55, y: -0.075, z: -0.3 },\n};\n\nconst studentPositionByRanking = {\n 1: { x: 0, y: -1.65, z: 0 },\n 2: { x: 1.25, y: -1.75, z: -0.15 },\n 3: { x: -1.25, y: -1.75, z: -0.15 },\n 4: { x: 2.65, y: -1.85, z: -0.25 },\n 5: { x: -2.65, y: -1.85, z: -0.25 },\n};\n\nexport { positionsByRanking, studentPositionByRanking };\n","import React from \"react\";\nimport {\n positionsByRanking,\n studentPositionByRanking,\n} from \"../../utils/FiveHousesLeaderboard\";\nimport BaseLeaderboard from \"./BaseLeaderboard\";\n\nconst FiveHousesLeaderboard = (props) => {\n const unit = 0.75;\n const basePosition = [0, 0.55, 3.4];\n const studentsBasePosition = [0, 0.55, 3.3];\n return (\n \n );\n};\n\nexport default FiveHousesLeaderboard;\n","const positionsByRanking = {\n 1: { x: 0, y: -0.075, z: 0 },\n 2: { x: -1.5, y: -0.075, z: -0.15 },\n 3: { x: 1.5, y: -0.075, z: -0.15 },\n 4: { x: 0, y: -1.9, z: -1 },\n};\n\nconst studentPositionByRanking = {\n 1: { x: -1.1, y: -1.65, z: 0 },\n 2: { x: -2.3, y: -1.65, z: 0 },\n 3: { x: 1.1, y: -1.65, z: 0 },\n 4: { x: 2.3, y: -1.65, z: 0 },\n};\n\nexport { positionsByRanking, studentPositionByRanking };\n","import React from \"react\";\nimport {\n positionsByRanking,\n studentPositionByRanking,\n} from \"../../utils/FourHousesLeaderboard\";\nimport BaseLeaderboard from \"./BaseLeaderboard\";\n\nconst FourHousesLeaderboard = (props) => {\n const unit = 0.75;\n const basePosition = [0, 0.55, 3.5];\n const studentsBasePosition = [0, 0.55, 3.4];\n\n return (\n \n );\n};\n\nexport default FourHousesLeaderboard;\n","const positionsByRanking = {\n 1: { x: 0, y: -0.25, z: 0 },\n 2: { x: -1.75, y: -0.75, z: -0.1 },\n 3: { x: 1.75, y: -0.75, z: -0.1 },\n 4: { x: 0, y: -1.75, z: -0.3 },\n};\n\nexport { positionsByRanking };\n","import React from \"react\";\nimport { useThree } from \"@react-three/fiber\";\nimport Banner from \"../../molecules/Leaderboard/Banner\";\nimport { positionsByRanking } from \"../../utils/GlobalLeaderboard\";\nimport { positionBanners } from \"../../utils/Leaderboard\";\nimport FallingGroup from \"../../atoms/Leaderboard/FallingGroup\";\nimport SubtitleBanner from \"../../atoms/Leaderboard/SubtitleBanner\";\n\nconst GlobalLeaderboard = ({ banners = [], down = true, loading = false }) => {\n const { height } = useThree((state) => state.viewport);\n const unit = 0.75;\n const basePosition = [0, 0.55, 3.5];\n const positionedBanners = positionBanners({\n unit,\n banners,\n positions: positionsByRanking,\n });\n const baseSubtitlePosition = 0.1;\n\n return (\n <>\n \n \n {positionedBanners.map(({ position: p, ...props }) => (\n \n ))}\n \n \n );\n};\n\nexport default GlobalLeaderboard;\n","const positionsByRanking = {\n 1: { x: 0, y: -0.075, z: 0.15 },\n 2: { x: 1.15, y: -0.05, z: -0.15 },\n 3: { x: -1.15, y: -0.05, z: -0.15 },\n 4: { x: 2.3, y: -0.05, z: -0.3 },\n 5: { x: -2.3, y: -0.05, z: -0.3 },\n 6: { x: 3.4, y: -0.075, z: -0.5 },\n 7: { x: -3.4, y: -0.075, z: -0.5 },\n};\n\nconst studentPositionByRanking = {\n 1: { x: 0, y: -1.65, z: 0.15 },\n 2: { x: 1.15, y: -1.75, z: -0.15 },\n 3: { x: -1.15, y: -1.75, z: -0.15 },\n 4: { x: 2.3, y: -1.85, z: -0.3 },\n 5: { x: -2.3, y: -1.85, z: -0.3 },\n 6: { x: 3.5, y: -1.95, z: -0.5 },\n 7: { x: -3.5, y: -1.95, z: -0.5 },\n};\n\nexport { positionsByRanking, studentPositionByRanking };\n","import React from \"react\";\nimport {\n positionsByRanking,\n studentPositionByRanking,\n} from \"../../utils/SevenHousesLeaderboard\";\nimport BaseLeaderboard from \"./BaseLeaderboard\";\n\nconst SevenHousesLeaderboard = (props) => {\n const unit = 0.675;\n const basePosition = [0, 0.6, 3.3];\n const studentsBasePosition = [0, 0.4, 3.2];\n\n return (\n \n );\n};\n\nexport default SevenHousesLeaderboard;\n","const positionsByRanking = {\n 1: { x: 0.05, y: -0.1, z: 0.15 },\n 2: { x: 1.15, y: -0.05, z: -0.15 },\n 3: { x: -1.15, y: -0.05, z: -0.15 },\n 4: { x: 2.3, y: -0.05, z: -0.3 },\n 5: { x: -2.3, y: -0.05, z: -0.3 },\n 6: { x: 3.5, y: -0.075, z: -0.5 },\n};\n\nconst studentPositionByRanking = {\n 1: { x: 0.05, y: -1.65, z: 0.15 },\n 2: { x: 1.15, y: -1.75, z: -0.15 },\n 3: { x: -1.15, y: -1.75, z: -0.15 },\n 4: { x: 2.35, y: -1.85, z: -0.3 },\n 5: { x: -2.35, y: -1.85, z: -0.3 },\n 6: { x: 3.6, y: -1.95, z: -0.5 },\n};\n\nexport { positionsByRanking, studentPositionByRanking };\n","import React from \"react\";\nimport {\n positionsByRanking,\n studentPositionByRanking,\n} from \"../../utils/SixHousesLeaderboard\";\nimport BaseLeaderboard from \"./BaseLeaderboard\";\n\nconst SixHousesLeaderboard = (props) => {\n const unit = 0.75;\n const basePosition = [-0.35, 0.55, 3.4];\n const studentsBasePosition = [-0.35, 0.6, 3.3];\n\n return (\n \n );\n};\n\nexport default SixHousesLeaderboard;\n","import React, { useState, useEffect } from \"react\";\nimport * as THREE from \"three\";\nimport Scene from \"../../atoms/Leaderboard/Scene\";\nimport EightHousesLeaderboard from \"../../organisms/Leaderboard/EightHousesLeaderboard\";\nimport FiveHousesLeaderboard from \"../../organisms/Leaderboard/FiveHousesLeaderboard\";\nimport FourHousesLeaderboard from \"../../organisms/Leaderboard/FourHousesLeaderboard\";\nimport { default as GLeaderboard } from \"../../organisms/Leaderboard/GlobalLeaderboard\";\nimport SevenHousesLeaderboard from \"../../organisms/Leaderboard/SevenHousesLeaderboard\";\nimport SixHousesLeaderboard from \"../../organisms/Leaderboard/SixHousesLeaderboard\";\nimport useDragonAnimation from \"../../hooks/useDragonAnimation\";\nimport \"./index.css\";\n\nexport const loadingManager = new THREE.LoadingManager();\nexport const TextureLoader = new THREE.TextureLoader(loadingManager);\nconst fov = 61;\n\nconst Layout = ({\n children,\n firstPosition,\n playingVideo,\n backgroundBlack,\n loading,\n hideBackgroundBlack,\n}) => {\n const bgColor = firstPosition?.color || \"blue\";\n return (\n \n {children}\n \n );\n};\n\nconst getFirstPosition = (banners) => banners.find((x) => x.ranking === 1);\nconst Leaderboard = ({ banners: lastBanners, students: lastStudents }) => {\n const [loading, setLoading] = useState(true);\n const [playingAnimation, setPlayingAnimation] = useState(false);\n const [playingVideo, setPlayingVideo] = useState(false);\n const [down, setDown] = useState(false);\n const [backgroundBlack, setBackgroundBlack] = useState(true);\n const [banners, setBanners] = useState(lastBanners);\n const [students, setStudents] = useState(lastStudents);\n const firstPosition = getFirstPosition(banners);\n\n const updateBanners = () => {\n setBanners(lastBanners);\n setStudents(lastStudents);\n };\n\n loadingManager.onLoad = function () {\n setLoading(false);\n };\n\n const playDragonAnimation = useDragonAnimation({\n setPlayingAnimation,\n setPlayingVideo,\n setDown,\n setBackgroundBlack,\n updateBanners,\n });\n\n useEffect(() => {\n if (!lastBanners.length) return;\n if (!banners.length) return updateBanners();\n const newFirstPosition = getFirstPosition(lastBanners);\n const oldFirstPosition = getFirstPosition(banners);\n const firstPositionChanged =\n newFirstPosition.color !== oldFirstPosition.color;\n if (firstPositionChanged) {\n playDragonAnimation();\n } else {\n updateBanners();\n }\n }, [lastBanners]);\n\n useEffect(() => {\n if (!loading) {\n setBackgroundBlack(false);\n setDown(true);\n }\n }, [loading]);\n\n const leaderboards = {\n 4: FourHousesLeaderboard,\n 5: FiveHousesLeaderboard,\n 6: SixHousesLeaderboard,\n 7: SevenHousesLeaderboard,\n 8: EightHousesLeaderboard,\n };\n const LeaderboardByNum = leaderboards[banners.length];\n if (!LeaderboardByNum) return null;\n\n return (\n \n \n \n );\n};\nconst GlobalLeaderboard = ({ banners }) => {\n const [loading, setLoading] = useState(true);\n loadingManager.onLoad = function () {\n setLoading(false);\n };\n\n return (\n \n ;\n \n );\n};\n\nexport default Leaderboard;\nexport { FourHousesLeaderboard, GlobalLeaderboard };\nexport { fov, Scene };\n","import { useState, useLayoutEffect, useEffect, useRef } from \"react\";\nimport { useHistory } from \"react-router-dom\";\n\nexport const useOnClickOutside = (ref, handler, mouseEvent = \"mousedown\") => {\n useEffect(() => {\n const wrappedHandler = (event) => {\n const el = ref?.current;\n\n if (!el || el.contains(event.target)) {\n return;\n }\n\n handler(event);\n };\n\n document.addEventListener(mouseEvent, wrappedHandler);\n\n return () => {\n document.removeEventListener(mouseEvent, wrappedHandler);\n };\n }, [ref, handler, mouseEvent]);\n};\n\nexport const useWindowSize = () => {\n const [size, setSize] = useState([0, 0]);\n useLayoutEffect(() => {\n function updateSize() {\n setSize([window.innerWidth, window.innerHeight]);\n }\n window.addEventListener(\"resize\", updateSize);\n updateSize();\n return () => window.removeEventListener(\"resize\", updateSize);\n }, []);\n return size;\n};\n\nexport const useWindowLocation = () => {\n const [location, setLocation] = useState(window.location);\n const listenToPopstate = () => {\n const loc = window.location;\n setLocation(loc);\n };\n useEffect(() => {\n window.addEventListener(\"popstate\", listenToPopstate);\n return () => {\n window.removeEventListener(\"popstate\", listenToPopstate);\n };\n }, []);\n return location;\n};\n\nexport const useHover = () => {\n const [value, setValue] = useState(false);\n const ref = useRef(null);\n const handleMouseOver = () => setValue(true);\n const handleMouseOut = () => setValue(false);\n useEffect(\n () => {\n const node = ref.current;\n if (node) {\n node.addEventListener(\"mouseover\", handleMouseOver);\n node.addEventListener(\"mouseout\", handleMouseOut);\n return () => {\n node.removeEventListener(\"mouseover\", handleMouseOver);\n node.removeEventListener(\"mouseout\", handleMouseOut);\n };\n }\n },\n [ref.current] // Recall only if ref changes\n );\n return [ref, value];\n};\n\nexport const useModalAsRoute = () => {\n const [open, setOpen] = useState(false);\n const history = useHistory();\n const handleClose = () => {\n setOpen(false);\n setTimeout(() => history?.goBack(), 100);\n };\n useEffect(() => {\n setOpen(true);\n }, []);\n\n return [{ open, setOpen: () => handleClose() }, handleClose];\n};\n","import axios from \"axios\";\n\nconst request = async ({\n url,\n method = \"get\",\n tokenName = \"token\",\n ...config\n}) => {\n const token = localStorage.getItem(tokenName);\n try {\n const response = await axios({\n method,\n headers: generateHeaders(token, config.additionalHeaders),\n url: generateURL(url),\n ...config,\n });\n if (response?.data?.error) throw response?.data?.error;\n else return response.data;\n } catch (e) {\n if (e?.response?.data?.message) throw e?.response?.data;\n else throw e;\n }\n};\n\nconst isLocalHost = () => location.hostname === \"localhost\";\n\nconst getBaseUrl = () =>\n `${location.protocol}//${location.hostname}${\n isLocalHost() ? `:${location.port}` : \"\"\n }`;\n\nconst generateURL = (url) => `${getBaseUrl()}/${url}`;\n\nconst generateHeaders = (token, otherHeaders = {}) => ({\n Authorization: `Bearer ${token}`,\n ...otherHeaders,\n});\n\nexport default request;\n\nexport const get = (params) => request({ ...params, method: \"get\" });\nexport const post = (params) => request({ ...params, method: \"post\" });\nexport const deleteRequest = (params) =>\n request({ ...params, method: \"delete\" });\nexport const patch = (params) => request({ ...params, method: \"patch\" });\nexport const put = (params) => request({ ...params, method: \"put\" });\n\nexport const fetchContentBinary = async (url) => {\n return await fetch(url)\n .then((response) => response.blob())\n .then((myBlob) => {\n return myBlob;\n });\n};\n","var map = {\n\t\"./af\": 42786,\n\t\"./af.js\": 42786,\n\t\"./ar\": 30867,\n\t\"./ar-dz\": 14130,\n\t\"./ar-dz.js\": 14130,\n\t\"./ar-kw\": 96135,\n\t\"./ar-kw.js\": 96135,\n\t\"./ar-ly\": 56440,\n\t\"./ar-ly.js\": 56440,\n\t\"./ar-ma\": 47702,\n\t\"./ar-ma.js\": 47702,\n\t\"./ar-sa\": 16040,\n\t\"./ar-sa.js\": 16040,\n\t\"./ar-tn\": 37100,\n\t\"./ar-tn.js\": 37100,\n\t\"./ar.js\": 30867,\n\t\"./az\": 31083,\n\t\"./az.js\": 31083,\n\t\"./be\": 9808,\n\t\"./be.js\": 9808,\n\t\"./bg\": 68338,\n\t\"./bg.js\": 68338,\n\t\"./bm\": 67438,\n\t\"./bm.js\": 67438,\n\t\"./bn\": 8905,\n\t\"./bn-bd\": 76225,\n\t\"./bn-bd.js\": 76225,\n\t\"./bn.js\": 8905,\n\t\"./bo\": 11560,\n\t\"./bo.js\": 11560,\n\t\"./br\": 1278,\n\t\"./br.js\": 1278,\n\t\"./bs\": 80622,\n\t\"./bs.js\": 80622,\n\t\"./ca\": 2468,\n\t\"./ca.js\": 2468,\n\t\"./cs\": 5822,\n\t\"./cs.js\": 5822,\n\t\"./cv\": 50877,\n\t\"./cv.js\": 50877,\n\t\"./cy\": 47373,\n\t\"./cy.js\": 47373,\n\t\"./da\": 24780,\n\t\"./da.js\": 24780,\n\t\"./de\": 59740,\n\t\"./de-at\": 60217,\n\t\"./de-at.js\": 60217,\n\t\"./de-ch\": 60894,\n\t\"./de-ch.js\": 60894,\n\t\"./de.js\": 59740,\n\t\"./dv\": 5300,\n\t\"./dv.js\": 5300,\n\t\"./el\": 50837,\n\t\"./el.js\": 50837,\n\t\"./en-au\": 78348,\n\t\"./en-au.js\": 78348,\n\t\"./en-ca\": 77925,\n\t\"./en-ca.js\": 77925,\n\t\"./en-gb\": 22243,\n\t\"./en-gb.js\": 22243,\n\t\"./en-ie\": 46436,\n\t\"./en-ie.js\": 46436,\n\t\"./en-il\": 47207,\n\t\"./en-il.js\": 47207,\n\t\"./en-in\": 44175,\n\t\"./en-in.js\": 44175,\n\t\"./en-nz\": 76319,\n\t\"./en-nz.js\": 76319,\n\t\"./en-sg\": 31662,\n\t\"./en-sg.js\": 31662,\n\t\"./eo\": 92915,\n\t\"./eo.js\": 92915,\n\t\"./es\": 55655,\n\t\"./es-do\": 55251,\n\t\"./es-do.js\": 55251,\n\t\"./es-mx\": 96112,\n\t\"./es-mx.js\": 96112,\n\t\"./es-us\": 71146,\n\t\"./es-us.js\": 71146,\n\t\"./es.js\": 55655,\n\t\"./et\": 5603,\n\t\"./et.js\": 5603,\n\t\"./eu\": 77763,\n\t\"./eu.js\": 77763,\n\t\"./fa\": 76959,\n\t\"./fa.js\": 76959,\n\t\"./fi\": 11897,\n\t\"./fi.js\": 11897,\n\t\"./fil\": 42549,\n\t\"./fil.js\": 42549,\n\t\"./fo\": 94694,\n\t\"./fo.js\": 94694,\n\t\"./fr\": 94470,\n\t\"./fr-ca\": 63049,\n\t\"./fr-ca.js\": 63049,\n\t\"./fr-ch\": 52330,\n\t\"./fr-ch.js\": 52330,\n\t\"./fr.js\": 94470,\n\t\"./fy\": 5044,\n\t\"./fy.js\": 5044,\n\t\"./ga\": 29295,\n\t\"./ga.js\": 29295,\n\t\"./gd\": 2101,\n\t\"./gd.js\": 2101,\n\t\"./gl\": 38794,\n\t\"./gl.js\": 38794,\n\t\"./gom-deva\": 27884,\n\t\"./gom-deva.js\": 27884,\n\t\"./gom-latn\": 23168,\n\t\"./gom-latn.js\": 23168,\n\t\"./gu\": 95349,\n\t\"./gu.js\": 95349,\n\t\"./he\": 24206,\n\t\"./he.js\": 24206,\n\t\"./hi\": 30094,\n\t\"./hi.js\": 30094,\n\t\"./hr\": 30316,\n\t\"./hr.js\": 30316,\n\t\"./hu\": 22138,\n\t\"./hu.js\": 22138,\n\t\"./hy-am\": 11423,\n\t\"./hy-am.js\": 11423,\n\t\"./id\": 29218,\n\t\"./id.js\": 29218,\n\t\"./is\": 90135,\n\t\"./is.js\": 90135,\n\t\"./it\": 90626,\n\t\"./it-ch\": 10150,\n\t\"./it-ch.js\": 10150,\n\t\"./it.js\": 90626,\n\t\"./ja\": 39183,\n\t\"./ja.js\": 39183,\n\t\"./jv\": 24286,\n\t\"./jv.js\": 24286,\n\t\"./ka\": 12105,\n\t\"./ka.js\": 12105,\n\t\"./kk\": 47772,\n\t\"./kk.js\": 47772,\n\t\"./km\": 18758,\n\t\"./km.js\": 18758,\n\t\"./kn\": 79282,\n\t\"./kn.js\": 79282,\n\t\"./ko\": 33730,\n\t\"./ko.js\": 33730,\n\t\"./ku\": 1408,\n\t\"./ku.js\": 1408,\n\t\"./ky\": 33291,\n\t\"./ky.js\": 33291,\n\t\"./lb\": 36841,\n\t\"./lb.js\": 36841,\n\t\"./lo\": 55466,\n\t\"./lo.js\": 55466,\n\t\"./lt\": 57010,\n\t\"./lt.js\": 57010,\n\t\"./lv\": 37595,\n\t\"./lv.js\": 37595,\n\t\"./me\": 39861,\n\t\"./me.js\": 39861,\n\t\"./mi\": 35493,\n\t\"./mi.js\": 35493,\n\t\"./mk\": 95966,\n\t\"./mk.js\": 95966,\n\t\"./ml\": 87341,\n\t\"./ml.js\": 87341,\n\t\"./mn\": 5115,\n\t\"./mn.js\": 5115,\n\t\"./mr\": 10370,\n\t\"./mr.js\": 10370,\n\t\"./ms\": 9847,\n\t\"./ms-my\": 41237,\n\t\"./ms-my.js\": 41237,\n\t\"./ms.js\": 9847,\n\t\"./mt\": 72126,\n\t\"./mt.js\": 72126,\n\t\"./my\": 56165,\n\t\"./my.js\": 56165,\n\t\"./nb\": 64924,\n\t\"./nb.js\": 64924,\n\t\"./ne\": 16744,\n\t\"./ne.js\": 16744,\n\t\"./nl\": 93901,\n\t\"./nl-be\": 59814,\n\t\"./nl-be.js\": 59814,\n\t\"./nl.js\": 93901,\n\t\"./nn\": 83877,\n\t\"./nn.js\": 83877,\n\t\"./oc-lnc\": 92135,\n\t\"./oc-lnc.js\": 92135,\n\t\"./pa-in\": 15858,\n\t\"./pa-in.js\": 15858,\n\t\"./pl\": 64495,\n\t\"./pl.js\": 64495,\n\t\"./pt\": 89520,\n\t\"./pt-br\": 57971,\n\t\"./pt-br.js\": 57971,\n\t\"./pt.js\": 89520,\n\t\"./ro\": 96459,\n\t\"./ro.js\": 96459,\n\t\"./ru\": 21793,\n\t\"./ru.js\": 21793,\n\t\"./sd\": 40950,\n\t\"./sd.js\": 40950,\n\t\"./se\": 10490,\n\t\"./se.js\": 10490,\n\t\"./si\": 90124,\n\t\"./si.js\": 90124,\n\t\"./sk\": 64249,\n\t\"./sk.js\": 64249,\n\t\"./sl\": 14985,\n\t\"./sl.js\": 14985,\n\t\"./sq\": 51104,\n\t\"./sq.js\": 51104,\n\t\"./sr\": 49131,\n\t\"./sr-cyrl\": 79915,\n\t\"./sr-cyrl.js\": 79915,\n\t\"./sr.js\": 49131,\n\t\"./ss\": 85893,\n\t\"./ss.js\": 85893,\n\t\"./sv\": 98760,\n\t\"./sv.js\": 98760,\n\t\"./sw\": 91172,\n\t\"./sw.js\": 91172,\n\t\"./ta\": 27333,\n\t\"./ta.js\": 27333,\n\t\"./te\": 23110,\n\t\"./te.js\": 23110,\n\t\"./tet\": 52095,\n\t\"./tet.js\": 52095,\n\t\"./tg\": 27321,\n\t\"./tg.js\": 27321,\n\t\"./th\": 9041,\n\t\"./th.js\": 9041,\n\t\"./tk\": 19005,\n\t\"./tk.js\": 19005,\n\t\"./tl-ph\": 75768,\n\t\"./tl-ph.js\": 75768,\n\t\"./tlh\": 89444,\n\t\"./tlh.js\": 89444,\n\t\"./tr\": 72397,\n\t\"./tr.js\": 72397,\n\t\"./tzl\": 28254,\n\t\"./tzl.js\": 28254,\n\t\"./tzm\": 51106,\n\t\"./tzm-latn\": 30699,\n\t\"./tzm-latn.js\": 30699,\n\t\"./tzm.js\": 51106,\n\t\"./ug-cn\": 9288,\n\t\"./ug-cn.js\": 9288,\n\t\"./uk\": 67691,\n\t\"./uk.js\": 67691,\n\t\"./ur\": 13795,\n\t\"./ur.js\": 13795,\n\t\"./uz\": 6791,\n\t\"./uz-latn\": 60588,\n\t\"./uz-latn.js\": 60588,\n\t\"./uz.js\": 6791,\n\t\"./vi\": 65666,\n\t\"./vi.js\": 65666,\n\t\"./x-pseudo\": 14378,\n\t\"./x-pseudo.js\": 14378,\n\t\"./yo\": 75805,\n\t\"./yo.js\": 75805,\n\t\"./zh-cn\": 83839,\n\t\"./zh-cn.js\": 83839,\n\t\"./zh-hk\": 55726,\n\t\"./zh-hk.js\": 55726,\n\t\"./zh-mo\": 99807,\n\t\"./zh-mo.js\": 99807,\n\t\"./zh-tw\": 74152,\n\t\"./zh-tw.js\": 74152\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;"],"names":["flagTexturesGold","black","blue","green","grey","orange","purple","red","teal","yellow","white","colors","none","backgroundColors","cupImage","Container","styled","div","_templateObject","_taggedTemplateLiteral","props","fixed","CopyrightText","_templateObject2","darkMode","_ref","React","moment","year","LeaderboardWrapper","show","meshRef","useRef","springOpacity","useSpring","from","opacity","to","config","duration","useFrame","newOpacity","current","material","uniforms","value","updateOpacity","Math","round","get","ref","position","scale","a","shaderMaterial","attach","vertexShader","fragmentShader","transparent","key","playing","src","_useMemo","useMemo","video","document","createElement","muted","autoplay","crossOrigin","videoTexture","THREE","encoding","map","useEffect","play","addEventListener","removeEventListener","visible","_useState2","_slicedToArray","useState","cameraPosition","setCameraPosition","size","useWindowSize","offset","window","innerWidth","innerHeight","extend","TextGeometry","Lights","intensity","CameraControl","_ref$cameraPosition","x","y","z","useThree","_ref2","camera","set","_ref3","_window","children","playingVideo","background","backgroundBlack","hideBackgroundBlack","devicePixelRatio","dpr","setDpr","useCameraPosition","bgTexture","textures","backgroundMap","TextureLoader","load","Canvas","flat","fov","Suspense","Preload","VideoBackground","BlackBackground","Environment","PerformanceMonitor","factor","step","onChange","e","_window2","minDpr","prevDpr","max","bounds","positionsByRanking","studentPositionByRanking","isGold","_ref$size","positionX","positionY","positionZ","texture","ChainsGold","ChainsSilver","imageMap","args","particleFire","color","_objectWithoutProperties","_excluded","clock","fireGeometry","delta","getDelta","update","_extends","geometry","fire","replace","Fire","baseZ","wind","flagTextures","mesh","stickTexture","url","cropStickImage","stickImage","stickMap","state","u_time","getElapsedTime","u_shadowStrength","u_zBase","fontSize","text","_ref$show","maximumLength","_ref$maxWidth","maxWidth","scaledFontSize","textRef","font","FontLoader","parse","stdFont","dynamicSize","setDynamicSize","_useState4","setOffset","_useState6","width","setWidth","bbox","setFromObject","bboxSize","newWidth","getSize","newDynamicSize","labelText","length","substring","height","number","houseLogo","p","ranking","_ref$fire","house","chains","points","_ref$shield","shield","_ref$wind","_ref$baseZ","_ref$swing","swing","distance","speed","initialPhaseRand","random","PI","MathUtils","lerp","phase","baseX","sin","rotation","displayShield","Chains","Flag","Cup","Label","String","getAddendum","Shield","positionBanners","u","unit","banners","positions","reduce","acc","pos","concat","_toConsumableArray","_objectSpread","positionReducer","studentTexturesGold","flagTexture","studentTextures","FrameGold","FrameSilver","FrameBackground","studentImage","studentVideo","imageTexture","tex","needsUpdate","repeat","wrapS","wrapT","mapVideo","loop","videoUrl","arguments","undefined","URL","pathname","match","href","console","error","videoCrop","newVideoTexture","REPEAT_X","roundedRectShape","ctx","radius","moveTo","lineTo","quadraticCurveTo","object","propTypes","PT","_studentFirstName$","_studentLastName$","studentFirstName","studentLastName","firstNameFirstLetter","toUpperCase","lastNameFirstLetter","Frame","NoStudent","showStudent","studentName","large","StudentFlag","Avatar","b","basePosition","_ref$displacement","displacement","down","loading","mass","tension","friction","_ref$loading","useFallingAnimation","animated","group","transitionPlayer","startTransition","fn","delay","setTimeout","setPlayingAnimation","setPlayingVideo","setDown","setBackgroundBlack","updateBanners","useTransition","playTransition","POSITIONS_BY_STEP","SWING_PHASES","setStep","swingStep","setSwingStep","showFirstPlaceText","setShowFirstPlaceText","_useSpring","getAnimationByStep","global","GlobalSubtitleBanner","SchoolSubtitleBanner","_ref$banners","_ref$students","students","studentsBasePosition","playingAnimation","_ref$baseSubtitlePosi","baseSubtitlePosition","viewport","firstBannerDown","setFirstBannerDown","playingFirstPosAnimation","setPlayingFirstPosAnimation","_positionBanners2","_toArray","firstBanner","positionedBanners","slice","_useFirstPositionAnim","useFirstPositionAnimation","firstBannerPosition","showFirstBanner","positionedStudentBanners","FallingGroup","style","SubtitleBanner","abs","Banner","customShield","_excluded2","StudentBanner","BaseLeaderboard","_ref$down","loadingManager","Layout","firstPosition","bgColor","Scene","getFirstPosition","find","GlobalLeaderboard","_useState16","setLoading","onLoad","GLeaderboard","lastBanners","lastStudents","_useState8","_useState10","_useState12","setBanners","_useState14","setStudents","playDragonAnimation","useDragonAnimation","newFirstPosition","oldFirstPosition","LeaderboardByNum","FourHousesLeaderboard","FiveHousesLeaderboard","SixHousesLeaderboard","SevenHousesLeaderboard","EightHousesLeaderboard","useOnClickOutside","handler","mouseEvent","wrappedHandler","event","el","contains","target","setSize","useLayoutEffect","updateSize","useWindowLocation","location","setLocation","listenToPopstate","loc","useHover","setValue","handleMouseOver","handleMouseOut","node","useModalAsRoute","open","setOpen","history","useHistory","handleClose","goBack","_regeneratorRuntime","exports","Op","Object","prototype","hasOwn","hasOwnProperty","defineProperty","obj","desc","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","arg","type","call","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","__await","then","unwrapped","previousPromise","callInvokeWithMethodAndArg","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","done","methodName","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","i","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","reverse","pop","skipTempReset","prev","charAt","stop","rootRecord","rval","exception","handle","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","apply","source","_defineProperty","getOwnPropertyDescriptors","defineProperties","input","hint","prim","toPrimitive","res","Number","_toPrimitive","_toPropertyKey","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","request","_callee","_ref$method","_ref$tokenName","tokenName","token","_response$data","_response$data2","response","_e$response","_e$response2","_context","localStorage","getItem","axios","headers","generateHeaders","additionalHeaders","generateURL","data","t0","message","_x","getBaseUrl","protocol","hostname","port","otherHeaders","Authorization","params","post","patch","fetchContentBinary","_callee2","_context2","fetch","blob","myBlob","_x2","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","code","module"],"sourceRoot":""}