diff --git a/.env.test.local.example b/.env.test.local.example index 9afad2c479..2ba2486f8d 100644 --- a/.env.test.local.example +++ b/.env.test.local.example @@ -22,3 +22,5 @@ FORCE_COLOR=1 REACT_APP_BUILDER_NFT_CONTRACT_ADDRESS=0x1d305a06cb9dbdc32e08c3d230889acb9fe8a4dd # so that we can load the UI and tests still pass REACT_APP_WALLETCONNECT_PROJECTID=PLACEHOLDER_WALLETCONNECT_PROJECTID +# Tests should run as scout game webapp +REACT_APP_SCOUTGAME_PLATFORM=webapp diff --git a/apps/scoutgame/__e2e__/profilePage.spec.ts b/apps/scoutgame/__e2e__/profilePage.spec.ts index d5f0d699d9..d88f5ab3bc 100644 --- a/apps/scoutgame/__e2e__/profilePage.spec.ts +++ b/apps/scoutgame/__e2e__/profilePage.spec.ts @@ -19,8 +19,13 @@ test.describe('Profile page', () => { await utils.loginAsUserId(builder.id); await page.goto('/scout'); - const link = page.locator(`data-test=site-navigation >> [href*="/profile"]`).first(); - await link.click(); + + const userPill = page.locator('data-test=user-menu-pill'); + await expect(userPill).toBeVisible(); + await userPill.click(); + const profileButton = page.locator('data-test=user-profile-button'); + await expect(profileButton).toBeVisible(); + await profileButton.click(); // Logged in user should be redirected await page.waitForURL('**/profile*'); diff --git a/apps/scoutgame/app/(general)/builders/page.tsx b/apps/scoutgame/app/(general)/builders/page.tsx index 77e966fbe7..9749dd9248 100644 --- a/apps/scoutgame/app/(general)/builders/page.tsx +++ b/apps/scoutgame/app/(general)/builders/page.tsx @@ -1,6 +1,5 @@ import { getCurrentWeek, validateISOWeek } from '@packages/scoutgame/dates'; - -import { BuildersPage } from 'components/builders/BuildersPage'; +import { BuildersPage } from '@packages/scoutgame-ui/components/builders/BuildersPage'; export default async function Builders({ searchParams diff --git a/apps/scoutgame/app/(general)/layout.tsx b/apps/scoutgame/app/(general)/layout.tsx index 6c8fd27dbe..43ad9c98ad 100644 --- a/apps/scoutgame/app/(general)/layout.tsx +++ b/apps/scoutgame/app/(general)/layout.tsx @@ -1,9 +1,8 @@ import { Box } from '@mui/material'; +import { Header } from '@packages/scoutgame-ui/components/common/Navigation/Header'; +import { StickyFooter } from '@packages/scoutgame-ui/components/common/Navigation/StickyFooter'; import type { ReactNode } from 'react'; -import { Header } from 'components/common/Header/Header'; -import { StickyFooter } from 'components/layout/StickyFooter'; - export default async function Layout({ children }: Readonly<{ diff --git a/apps/scoutgame/app/(general)/scout/page.tsx b/apps/scoutgame/app/(general)/scout/page.tsx index 65b7c50ae0..00d1ac8d4c 100644 --- a/apps/scoutgame/app/(general)/scout/page.tsx +++ b/apps/scoutgame/app/(general)/scout/page.tsx @@ -1,7 +1,7 @@ import { prisma } from '@charmverse/core/prisma-client'; import { MAX_STARTER_PACK_PURCHASES } from '@packages/scoutgame/builderNfts/constants'; +import type { StarterPackBuilder } from '@packages/scoutgame/builders/getStarterPackBuilders'; import { getStarterPackBuilders } from '@packages/scoutgame/builders/getStarterPackBuilders'; -import type { BuilderInfo } from '@packages/scoutgame/builders/interfaces'; import { currentSeason } from '@packages/scoutgame/dates'; import { getUserFromSession } from '@packages/scoutgame/session/getUserFromSession'; import { safeAwaitSSRData } from '@packages/scoutgame/utils/async'; @@ -23,7 +23,7 @@ export default async function Scout({ const user = await getUserFromSession(); - let builders: BuilderInfo[] = []; + let builders: StarterPackBuilder[] = []; let remainingStarterCards = MAX_STARTER_PACK_PURCHASES; @@ -38,7 +38,7 @@ export default async function Scout({ remainingStarterCards = MAX_STARTER_PACK_PURCHASES - purchases; if (purchases < MAX_STARTER_PACK_PURCHASES) { - const [_, starterPackBuilders] = await safeAwaitSSRData(getStarterPackBuilders()); + const [_, starterPackBuilders] = await safeAwaitSSRData(getStarterPackBuilders({ userId: user?.id })); builders = starterPackBuilders ?? []; } } diff --git a/apps/scoutgame/app/api/connect-github/get-link/route.ts b/apps/scoutgame/app/api/connect-github/get-link/route.ts index b1d23fcdc0..f266df6158 100644 --- a/apps/scoutgame/app/api/connect-github/get-link/route.ts +++ b/apps/scoutgame/app/api/connect-github/get-link/route.ts @@ -1,7 +1,6 @@ import { getGithubOAuthCallbackUrl } from '@packages/github/oauth'; import { getSession } from '@packages/scoutgame/session/getSession'; -import { authSecret } from '@root/config/constants'; -import { GITHUB_CLIENT_ID } from '@root/lib/github/constants'; +import { authSecret, GITHUB_CLIENT_ID } from '@packages/utils/constants'; import { sealData } from 'iron-session'; import type { NextRequest } from 'next/server'; diff --git a/apps/scoutgame/components/builders/BuilderPageTable/components/ActivityTable.tsx b/apps/scoutgame/components/builders/BuilderPageTable/components/ActivityTable.tsx deleted file mode 100644 index df447090a3..0000000000 --- a/apps/scoutgame/components/builders/BuilderPageTable/components/ActivityTable.tsx +++ /dev/null @@ -1,166 +0,0 @@ -import { Stack, TableHead, Typography } from '@mui/material'; -import Table from '@mui/material/Table'; -import TableBody from '@mui/material/TableBody'; -import TableCell from '@mui/material/TableCell'; -import type { BuilderActivity } from '@packages/scoutgame/builders/getBuilderActivities'; -import { Avatar } from '@packages/scoutgame-ui/components/common/Avatar'; -import { GemsIcon } from '@packages/scoutgame-ui/components/common/Icons'; -import { - BuilderActivityBonusPartner, - BuilderActivityGems, - getActivityLabel -} from '@packages/scoutgame-ui/components/profile/components/BuilderProfile/BuilderActivitiesList'; -import { getRelativeTime } from '@packages/utils/dates'; -import Link from 'next/link'; -import { BiLike } from 'react-icons/bi'; -import { LuBookMarked } from 'react-icons/lu'; - -import { CommonTableRow } from './CommonTableRow'; -import { TableCellText } from './TableCellText'; - -export function BuilderActivityAction({ activity }: { activity: BuilderActivity }) { - return ( - - {activity.type === 'github_event' ? ( - - ) : activity.type === 'nft_purchase' ? ( - - ) : null} - - {getActivityLabel(activity)} - {activity.type === 'nft_purchase' && ( - - - {activity.scout.displayName} - - - )} - {activity.type === 'github_event' && ( - - ({activity.repo}) - - )} - - - ); -} - -export function ActivityTable({ activities }: { activities: BuilderActivity[] }) { - return ( - - - - BUILDER - ACTION - - - - EARNED - - - - - BONUS - - - - - {activities.map((activity) => ( - - - - - {activity.displayName} - - - - - - - - - - - - - - - {getRelativeTime(activity.createdAt)} - - - ))} - -
- ); -} diff --git a/apps/scoutgame/components/scout/ScoutPage.tsx b/apps/scoutgame/components/scout/ScoutPage.tsx index 003b95de71..8b662364f5 100644 --- a/apps/scoutgame/components/scout/ScoutPage.tsx +++ b/apps/scoutgame/components/scout/ScoutPage.tsx @@ -1,6 +1,7 @@ import AppsIcon from '@mui/icons-material/Apps'; import FormatListBulletedIcon from '@mui/icons-material/FormatListBulleted'; import { Box, Grid2 as Grid, Stack, Typography } from '@mui/material'; +import type { StarterPackBuilder } from '@packages/scoutgame/builders/getStarterPackBuilders'; import type { BuilderInfo } from '@packages/scoutgame/builders/interfaces'; import { HeaderMessage } from '@packages/scoutgame-ui/components/common/Header/HeaderMessage'; import { TabsMenu, type TabItem } from '@packages/scoutgame-ui/components/common/Tabs/TabsMenu'; @@ -34,7 +35,8 @@ export function ScoutPage({ buildersLayout, tab, starterpackBuilders, - remainingStarterCards + remainingStarterCards, + userId }: { scoutSort: string; builderSort: string; @@ -43,8 +45,9 @@ export function ScoutPage({ scoutTab: string; buildersLayout: string; tab: string; - starterpackBuilders: BuilderInfo[]; + starterpackBuilders: StarterPackBuilder[]; remainingStarterCards?: number; + userId?: string; }) { const urlString = Object.entries({ tab, scoutSort, builderSort, scoutOrder, builderOrder }) .filter(([, value]) => isTruthy(value)) @@ -56,7 +59,6 @@ export function ScoutPage({ @@ -148,7 +150,13 @@ export function ScoutPage({ diff --git a/apps/scoutgame/components/scout/components/BuildersGalleryContainer.tsx b/apps/scoutgame/components/scout/components/BuildersGalleryContainer.tsx index 28d5b1d936..104c93c62f 100644 --- a/apps/scoutgame/components/scout/components/BuildersGalleryContainer.tsx +++ b/apps/scoutgame/components/scout/components/BuildersGalleryContainer.tsx @@ -77,10 +77,10 @@ export function BuildersGalleryContainer({ return ( <> - {nextCursor &&
} + {nextCursor &&
} {isLoading && ( - + )} {error && {error}} diff --git a/apps/scoutgame/hooks/api/session.ts b/apps/scoutgame/hooks/api/session.ts deleted file mode 100644 index 6583752737..0000000000 --- a/apps/scoutgame/hooks/api/session.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { useGETImmutable } from '@packages/scoutgame-ui/hooks/helpers'; - -export function useGetClaimablePoints() { - return useGETImmutable<{ points: number }>( - '/api/session/claimable-points', - {}, - { - refreshInterval: 30000 - } - ); -} diff --git a/apps/scoutgame/lib/builders/getPaginatedBuilders.ts b/apps/scoutgame/lib/builders/getPaginatedBuilders.ts index 06a6f20936..9b4ae6d227 100644 --- a/apps/scoutgame/lib/builders/getPaginatedBuilders.ts +++ b/apps/scoutgame/lib/builders/getPaginatedBuilders.ts @@ -32,14 +32,19 @@ export async function getPaginatedBuilders({ }, week }, - orderBy: { - rank: 'asc' - }, + orderBy: [ + { + rank: 'asc' + }, + { + userId: 'asc' + } + ], skip: cursor ? 1 : 0, take: limit, cursor: cursor ? { - rank: cursor.rank, + rank: cursor.rank === -1 ? null : cursor.rank, userId_week: { userId: cursor.userId, week diff --git a/apps/scoutgame/scripts/query.ts b/apps/scoutgame/scripts/query.ts index 5c51fd2bd1..92bd33c60f 100644 --- a/apps/scoutgame/scripts/query.ts +++ b/apps/scoutgame/scripts/query.ts @@ -1,6 +1,4 @@ -import { prisma } from '@charmverse/core/prisma-client'; - -import { getLeaderboard } from 'lib/builders/getLeaderboard'; +import { getLeaderboard } from '@packages/scoutgame/builders/getLeaderboard'; import { getTopScoutsByWeek } from 'lib/scouts/getTopScouts'; import { getWeekStartEndFormatted, getDateFromISOWeek } from '@packages/scoutgame/dates'; async function query() { diff --git a/apps/scoutgametelegram/app/(general)/builders/page.tsx b/apps/scoutgametelegram/app/(general)/builders/page.tsx new file mode 100644 index 0000000000..9749dd9248 --- /dev/null +++ b/apps/scoutgametelegram/app/(general)/builders/page.tsx @@ -0,0 +1,13 @@ +import { getCurrentWeek, validateISOWeek } from '@packages/scoutgame/dates'; +import { BuildersPage } from '@packages/scoutgame-ui/components/builders/BuildersPage'; + +export default async function Builders({ + searchParams +}: { + searchParams: { [key: string]: string | string[] | undefined }; +}) { + const tab = (searchParams.tab as string) || 'leaderboard'; + const week = searchParams.week as string | undefined; + + return ; +} diff --git a/apps/scoutgametelegram/app/(general)/layout.tsx b/apps/scoutgametelegram/app/(general)/layout.tsx index 28aa6bda5a..8c0b58a0c8 100644 --- a/apps/scoutgametelegram/app/(general)/layout.tsx +++ b/apps/scoutgametelegram/app/(general)/layout.tsx @@ -1,8 +1,6 @@ import { Box, Stack } from '@mui/material'; - -import { Header } from 'components/common/Header'; -import { GeneralBackgroundImage } from 'components/layout/GeneralBackgroundImage'; -import { StickyFooter } from 'components/layout/StickyFooter'; +import { Header } from '@packages/scoutgame-ui/components/common/Navigation/Header'; +import { StickyFooter } from '@packages/scoutgame-ui/components/common/Navigation/StickyFooter'; export default function Layout({ children @@ -12,11 +10,15 @@ export default function Layout({ return (
- - + {children} - ); diff --git a/apps/scoutgametelegram/app/api/connect-github/get-link/route.ts b/apps/scoutgametelegram/app/api/connect-github/get-link/route.ts new file mode 100644 index 0000000000..f266df6158 --- /dev/null +++ b/apps/scoutgametelegram/app/api/connect-github/get-link/route.ts @@ -0,0 +1,35 @@ +import { getGithubOAuthCallbackUrl } from '@packages/github/oauth'; +import { getSession } from '@packages/scoutgame/session/getSession'; +import { authSecret, GITHUB_CLIENT_ID } from '@packages/utils/constants'; +import { sealData } from 'iron-session'; +import type { NextRequest } from 'next/server'; + +export async function GET(req: NextRequest) { + const session = await getSession(); + const redirectToProfile = req.nextUrl.searchParams.get('profile-redirect'); + if (!session.scoutId) { + return new Response('Authentication required', { status: 401 }); + } + + const sealedUserId = await sealData( + { + id: session.scoutId + }, + { password: authSecret as string } + ); + + const redirect = `${process.env.DOMAIN}/builder-registration-callback`; + + const redirectUrl = getGithubOAuthCallbackUrl({ + clientId: GITHUB_CLIENT_ID, + redirect: redirectToProfile ? `${redirect}?profile-redirect=${redirectToProfile}` : redirect, + state: sealedUserId + }); + + return new Response(null, { + status: 302, + headers: { + Location: redirectUrl + } + }); +} diff --git a/apps/scoutgametelegram/components/common/Header.tsx b/apps/scoutgametelegram/components/common/Header.tsx deleted file mode 100644 index 02ea4ee09d..0000000000 --- a/apps/scoutgametelegram/components/common/Header.tsx +++ /dev/null @@ -1,115 +0,0 @@ -'use client'; - -import InfoIcon from '@mui/icons-material/Info'; -import { Avatar, Box, Button, Menu, IconButton, MenuItem, Stack, Typography } from '@mui/material'; -import { useUser } from '@packages/scoutgame-ui/providers/UserProvider'; -import Image from 'next/image'; -import Link from 'next/link'; -import { useState } from 'react'; -import type { MouseEvent } from 'react'; - -export function Header() { - const { user } = useUser(); - const [anchorElUser, setAnchorElUser] = useState(null); - - const handleOpenUserMenu = (event: MouseEvent) => { - setAnchorElUser(event.currentTarget); - }; - - const handleCloseUserMenu = () => { - setAnchorElUser(null); - }; - - return ( - - - Scout Game logo - - - - - - - - {user ? ( - - - - - {user.displayName} - - - - ) : null} - - - ); -} diff --git a/apps/scoutgametelegram/components/common/SiteNavigation.tsx b/apps/scoutgametelegram/components/common/SiteNavigation.tsx deleted file mode 100644 index 50962b140d..0000000000 --- a/apps/scoutgametelegram/components/common/SiteNavigation.tsx +++ /dev/null @@ -1,89 +0,0 @@ -'use client'; - -import { BottomNavigation, BottomNavigationAction, styled } from '@mui/material'; -import { ClaimIcon } from '@packages/scoutgame-ui/components/common/Icons/ClaimIcon'; -import Link from 'next/link'; -import { usePathname } from 'next/navigation'; - -import { useGetClaimablePoints } from 'hooks/api/session'; - -import { QuestsIcon } from './Icons/QuestsIcon'; -import { ScoutIcon } from './Icons/ScoutIcon'; - -const StyledBottomNavigation = styled(BottomNavigation, { - shouldForwardProp: (prop) => prop !== 'topNav' && prop !== 'isTelegram' -})<{ topNav?: boolean; isTelegram?: boolean }>(({ theme, topNav, isTelegram }) => ({ - background: topNav - ? 'transparent' - : 'linear-gradient(88.35deg, #96CDFF 0%, #A06CD5 29.5%, #96CDFF 75.47%, #A06CD5 100%)', - height: isTelegram ? '71px' : '56px', - '& > a': { - color: topNav ? theme.palette.text.primary : theme.palette.common.black, - gap: '2px', - width: topNav ? '110px' : 'auto', - transition: 'background-color 0.3s ease', - '&:hover': { - backgroundColor: 'rgba(255, 255, 255, 0.1)' - }, - '&.Mui-selected': { - color: theme.palette.text.primary, - backgroundColor: topNav ? theme.palette.primary.main : 'rgba(44, 0, 90, 0.25)' - }, - '&.MuiButtonBase-root': { - paddingBottom: isTelegram ? '15px' : '0', - minWidth: '60px' - }, - '& .MuiBottomNavigationAction-label': { - fontSize: '.75rem' - } - } -})); - -export function SiteNavigation({ topNav, isTelegram }: { topNav?: boolean; isTelegram?: boolean }) { - const pathname = usePathname(); - const value = getActiveButton(pathname); - const { data: claimablePoints } = useGetClaimablePoints(); - - return ( - - } - LinkComponent={Link} - /> - } - LinkComponent={Link} - /> - 0} />} - LinkComponent={Link} - /> - - ); -} - -function getActiveButton(pathname: string) { - if (pathname.startsWith('/quests')) { - return 'quests'; - } else if (pathname.startsWith('/scout') || pathname.startsWith('/u')) { - return 'scout'; - } else if (pathname.startsWith('/claim')) { - return 'claim'; - } - return null; -} diff --git a/apps/scoutgametelegram/components/layout/GeneralBackgroundImage.tsx b/apps/scoutgametelegram/components/layout/GeneralBackgroundImage.tsx deleted file mode 100644 index eb507e178d..0000000000 --- a/apps/scoutgametelegram/components/layout/GeneralBackgroundImage.tsx +++ /dev/null @@ -1,22 +0,0 @@ -import type { BoxProps } from '@mui/material/Box'; -import Box from '@mui/material/Box'; - -export function GeneralBackgroundImage(props: BoxProps) { - return ( - - ); -} diff --git a/apps/scoutgametelegram/components/layout/StickyFooter.tsx b/apps/scoutgametelegram/components/layout/StickyFooter.tsx deleted file mode 100644 index ba55ec3853..0000000000 --- a/apps/scoutgametelegram/components/layout/StickyFooter.tsx +++ /dev/null @@ -1,12 +0,0 @@ -import { Box } from '@mui/material'; -import { getPlatform } from '@packages/mixpanel/utils'; - -import { SiteNavigation } from 'components/common/SiteNavigation'; - -export function StickyFooter() { - return ( - - - - ); -} diff --git a/apps/scoutgametelegram/components/scout/ScoutPage.tsx b/apps/scoutgametelegram/components/scout/ScoutPage.tsx index 01dd550479..15590c51b4 100644 --- a/apps/scoutgametelegram/components/scout/ScoutPage.tsx +++ b/apps/scoutgametelegram/components/scout/ScoutPage.tsx @@ -1,5 +1,5 @@ import { Box, Typography } from '@mui/material'; -import { LoadingTable } from '@packages/scoutgame-ui/components/claim/components/common/LoadingTable'; +import { LoadingTable } from '@packages/scoutgame-ui/components/common/Loading/LoadingTable'; import { InfoModal } from '@packages/scoutgame-ui/components/scout/InfoModal'; import { scoutTabs, diff --git a/apps/scoutgametelegram/hooks/api/session.ts b/apps/scoutgametelegram/hooks/api/session.ts index d7c6bb9960..7a5ae3118b 100644 --- a/apps/scoutgametelegram/hooks/api/session.ts +++ b/apps/scoutgametelegram/hooks/api/session.ts @@ -1,16 +1,6 @@ import { useGETImmutable, usePOST } from '@packages/scoutgame-ui/hooks/helpers'; import type { WebAppInitData } from '@twa-dev/types'; -export function useGetClaimablePoints() { - return useGETImmutable<{ points: number }>( - '/api/session/claimable-points', - {}, - { - refreshInterval: 30000 - } - ); -} - export function useInitTelegramUser() { return usePOST<{ initData: string }, WebAppInitData>('/api/session/telegram-user'); } diff --git a/apps/scoutgametelegram/public/images/crypto/celo.png b/apps/scoutgametelegram/public/images/crypto/celo.png new file mode 100644 index 0000000000..7763d50f07 Binary files /dev/null and b/apps/scoutgametelegram/public/images/crypto/celo.png differ diff --git a/apps/scoutgametelegram/public/images/crypto/game7.png b/apps/scoutgametelegram/public/images/crypto/game7.png new file mode 100644 index 0000000000..4ffd8c9c93 Binary files /dev/null and b/apps/scoutgametelegram/public/images/crypto/game7.png differ diff --git a/apps/scoutgametelegram/public/images/crypto/lit.png b/apps/scoutgametelegram/public/images/crypto/lit.png new file mode 100644 index 0000000000..0b81eb1367 Binary files /dev/null and b/apps/scoutgametelegram/public/images/crypto/lit.png differ diff --git a/apps/scoutgametelegram/public/images/crypto/op copy.png b/apps/scoutgametelegram/public/images/crypto/op copy.png new file mode 100644 index 0000000000..d1eb191390 Binary files /dev/null and b/apps/scoutgametelegram/public/images/crypto/op copy.png differ diff --git a/apps/scoutgametelegram/public/images/crypto/orderly copy.png b/apps/scoutgametelegram/public/images/crypto/orderly copy.png new file mode 100644 index 0000000000..f04fb3dad4 Binary files /dev/null and b/apps/scoutgametelegram/public/images/crypto/orderly copy.png differ diff --git a/apps/scoutgametelegram/public/images/crypto/redstone64 copy.png b/apps/scoutgametelegram/public/images/crypto/redstone64 copy.png new file mode 100644 index 0000000000..89acb092ee Binary files /dev/null and b/apps/scoutgametelegram/public/images/crypto/redstone64 copy.png differ diff --git a/apps/scoutgametelegram/public/images/crypto/talent.jpg b/apps/scoutgametelegram/public/images/crypto/talent.jpg new file mode 100644 index 0000000000..046911154b Binary files /dev/null and b/apps/scoutgametelegram/public/images/crypto/talent.jpg differ diff --git a/apps/scoutgametelegram/public/images/github-logo.png b/apps/scoutgametelegram/public/images/github-logo.png new file mode 100644 index 0000000000..e1f4f41779 Binary files /dev/null and b/apps/scoutgametelegram/public/images/github-logo.png differ diff --git a/apps/scoutgametelegram/public/images/promos/celo-promo-slide.png b/apps/scoutgametelegram/public/images/promos/celo-promo-slide.png new file mode 100644 index 0000000000..2c66fb3747 Binary files /dev/null and b/apps/scoutgametelegram/public/images/promos/celo-promo-slide.png differ diff --git a/apps/scoutgametelegram/public/images/promos/game7-promo-slide.png b/apps/scoutgametelegram/public/images/promos/game7-promo-slide.png new file mode 100644 index 0000000000..8bfa4d420b Binary files /dev/null and b/apps/scoutgametelegram/public/images/promos/game7-promo-slide.png differ diff --git a/apps/scoutgametelegram/public/images/promos/lit-promo-slide.png b/apps/scoutgametelegram/public/images/promos/lit-promo-slide.png new file mode 100644 index 0000000000..25f89403a2 Binary files /dev/null and b/apps/scoutgametelegram/public/images/promos/lit-promo-slide.png differ diff --git a/apps/scoutgametelegram/public/images/promos/op-supersim-promo-slide.png b/apps/scoutgametelegram/public/images/promos/op-supersim-promo-slide.png new file mode 100644 index 0000000000..7d37b41e9e Binary files /dev/null and b/apps/scoutgametelegram/public/images/promos/op-supersim-promo-slide.png differ diff --git a/apps/scoutgametelegram/public/images/promos/talent-promo-slide.png b/apps/scoutgametelegram/public/images/promos/talent-promo-slide.png new file mode 100644 index 0000000000..f659967d02 Binary files /dev/null and b/apps/scoutgametelegram/public/images/promos/talent-promo-slide.png differ diff --git a/package-lock.json b/package-lock.json index a400e47832..e94df55e35 100644 --- a/package-lock.json +++ b/package-lock.json @@ -139,7 +139,7 @@ "frames.js": "^0.18.1", "gaxios": "^5.0.2", "google-auth-library": "^8.7.0", - "graphql": "^16.8.1", + "graphql": "^16.8.2", "hot-shots": "^9.0.0", "html-to-text": "^8.2.0", "i": "^0.3.7", @@ -161,9 +161,9 @@ "millify": "^4.0.0", "mixpanel": "^0.17.0", "msw-storybook-addon": "^2.0.0", - "nanoid": "^3.3.6", + "nanoid": "^3.3.8", "nanoid-dictionary": "^3.0.0", - "next": "^14.2.16", + "next": "^14.2.17", "next-bundle-analyzer": "^0.6.8", "next-connect": "^0.13.0", "next-swagger-doc": "^0.3.6", @@ -303,7 +303,7 @@ "aws-cdk": "^2.151.0", "chromatic": "^6.21.0", "concurrently": "^8.2.1", - "cookie": "^0.7.0", + "cookie": "^0.7.1", "cross-env": "^7.0.3", "dependency-cruiser": "^13.1.5", "dotenv": "^16.3.1", @@ -16579,9 +16579,9 @@ } }, "node_modules/@next/env": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.16.tgz", - "integrity": "sha512-fLrX5TfJzHCbnZ9YUSnGW63tMV3L4nSfhgOQ0iCcX21Pt+VSTDuaLsSuL8J/2XAiVA5AnzvXDpf6pMs60QxOag==" + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.17.tgz", + "integrity": "sha512-MCgO7VHxXo8sYR/0z+sk9fGyJJU636JyRmkjc7ZJY8Hurl8df35qG5hoAh5KMs75FLjhlEo9bb2LGe89Y/scDA==" }, "node_modules/@next/eslint-plugin-next": { "version": "14.2.15", @@ -16639,9 +16639,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.16.tgz", - "integrity": "sha512-uFT34QojYkf0+nn6MEZ4gIWQ5aqGF11uIZ1HSxG+cSbj+Mg3+tYm8qXYd3dKN5jqKUm5rBVvf1PBRO/MeQ6rxw==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.17.tgz", + "integrity": "sha512-WiOf5nElPknrhRMTipXYTJcUz7+8IAjOYw3vXzj3BYRcVY0hRHKWgTgQ5439EvzQyHEko77XK+yN9x9OJ0oOog==", "cpu": [ "arm64" ], @@ -16654,9 +16654,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.16.tgz", - "integrity": "sha512-mCecsFkYezem0QiZlg2bau3Xul77VxUD38b/auAjohMA22G9KTJneUYMv78vWoCCFkleFAhY1NIvbyjj1ncG9g==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.17.tgz", + "integrity": "sha512-29y425wYnL17cvtxrDQWC3CkXe/oRrdt8ie61S03VrpwpPRI0XsnTvtKO06XCisK4alaMnZlf8riwZIbJTaSHQ==", "cpu": [ "x64" ], @@ -16669,9 +16669,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.16.tgz", - "integrity": "sha512-yhkNA36+ECTC91KSyZcgWgKrYIyDnXZj8PqtJ+c2pMvj45xf7y/HrgI17hLdrcYamLfVt7pBaJUMxADtPaczHA==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.17.tgz", + "integrity": "sha512-SSHLZls3ZwNEHsc+d0ynKS+7Af0Nr8+KTUBAy9pm6xz9SHkJ/TeuEg6W3cbbcMSh6j4ITvrjv3Oi8n27VR+IPw==", "cpu": [ "arm64" ], @@ -16684,9 +16684,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.16.tgz", - "integrity": "sha512-X2YSyu5RMys8R2lA0yLMCOCtqFOoLxrq2YbazFvcPOE4i/isubYjkh+JCpRmqYfEuCVltvlo+oGfj/b5T2pKUA==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.17.tgz", + "integrity": "sha512-VFge37us5LNPatB4F7iYeuGs9Dprqe4ZkW7lOEJM91r+Wf8EIdViWHLpIwfdDXinvCdLl6b4VyLpEBwpkctJHA==", "cpu": [ "arm64" ], @@ -16699,9 +16699,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.16.tgz", - "integrity": "sha512-9AGcX7VAkGbc5zTSa+bjQ757tkjr6C/pKS7OK8cX7QEiK6MHIIezBLcQ7gQqbDW2k5yaqba2aDtaBeyyZh1i6Q==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.17.tgz", + "integrity": "sha512-aaQlpxUVb9RZ41adlTYVQ3xvYEfBPUC8+6rDgmQ/0l7SvK8S1YNJzPmDPX6a4t0jLtIoNk7j+nroS/pB4nx7vQ==", "cpu": [ "x64" ], @@ -16714,9 +16714,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.16.tgz", - "integrity": "sha512-Klgeagrdun4WWDaOizdbtIIm8khUDQJ/5cRzdpXHfkbY91LxBXeejL4kbZBrpR/nmgRrQvmz4l3OtttNVkz2Sg==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.17.tgz", + "integrity": "sha512-HSyEiFaEY3ay5iATDqEup5WAfrhMATNJm8dYx3ZxL+e9eKv10XKZCwtZByDoLST7CyBmyDz+OFJL1wigyXeaoA==", "cpu": [ "x64" ], @@ -16729,9 +16729,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.16.tgz", - "integrity": "sha512-PwW8A1UC1Y0xIm83G3yFGPiOBftJK4zukTmk7DI1CebyMOoaVpd8aSy7K6GhobzhkjYvqS/QmzcfsWG2Dwizdg==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.17.tgz", + "integrity": "sha512-h5qM9Btqv87eYH8ArrnLoAHLyi79oPTP2vlGNSg4CDvUiXgi7l0+5KuEGp5pJoMhjuv9ChRdm7mRlUUACeBt4w==", "cpu": [ "arm64" ], @@ -16744,9 +16744,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.16.tgz", - "integrity": "sha512-jhPl3nN0oKEshJBNDAo0etGMzv0j3q3VYorTSFqH1o3rwv1MQRdor27u1zhkgsHPNeY1jxcgyx1ZsCkDD1IHgg==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.17.tgz", + "integrity": "sha512-BD/G++GKSLexQjdyoEUgyo5nClU7er5rK0sE+HlEqnldJSm96CIr/+YOTT063LVTT/dUOeQsNgp5DXr86/K7/A==", "cpu": [ "ia32" ], @@ -16759,9 +16759,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.16.tgz", - "integrity": "sha512-OA7NtfxgirCjfqt+02BqxC3MIgM/JaGjw9tOe4fyZgPsqfseNiMPnCRP44Pfs+Gpo9zPN+SXaFsgP6vk8d571A==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.17.tgz", + "integrity": "sha512-vkQfN1+4V4KqDibkW2q0sJ6CxQuXq5l2ma3z0BRcfIqkAMZiiW67T9yCpwqJKP68QghBtPEFjPAlaqe38O6frw==", "cpu": [ "x64" ], @@ -22928,9 +22928,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.1.tgz", - "integrity": "sha512-lncuC4aHicncmbORnx+dUaAgzee9cm/PbIqgWz1PpXuwc+sa1Ct83tnqUDy/GFKleLiN7ZIeytM6KJ4cAn1SxA==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.28.1.tgz", + "integrity": "sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==", "cpu": [ "arm" ], @@ -22941,9 +22941,9 @@ "peer": true }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.1.tgz", - "integrity": "sha512-F/tkdw0WSs4ojqz5Ovrw5r9odqzFjb5LIgHdHZG65dFI1lWTWRVy32KDJLKRISHgJvqUeUhdIvy43fX41znyDg==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.28.1.tgz", + "integrity": "sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==", "cpu": [ "arm64" ], @@ -22954,9 +22954,9 @@ "peer": true }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.1.tgz", - "integrity": "sha512-vk+ma8iC1ebje/ahpxpnrfVQJibTMyHdWpOGZ3JpQ7Mgn/3QNHmPq7YwjZbIE7km73dH5M1e6MRRsnEBW7v5CQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.28.1.tgz", + "integrity": "sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==", "cpu": [ "arm64" ], @@ -22967,9 +22967,9 @@ "peer": true }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.1.tgz", - "integrity": "sha512-IgpzXKauRe1Tafcej9STjSSuG0Ghu/xGYH+qG6JwsAUxXrnkvNHcq/NL6nz1+jzvWAnQkuAJ4uIwGB48K9OCGA==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.28.1.tgz", + "integrity": "sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==", "cpu": [ "x64" ], @@ -22979,10 +22979,36 @@ ], "peer": true }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.28.1.tgz", + "integrity": "sha512-HTDPdY1caUcU4qK23FeeGxCdJF64cKkqajU0iBnTVxS8F7H/7BewvYoG+va1KPSL63kQ1PGNyiwKOfReavzvNA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "peer": true + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.28.1.tgz", + "integrity": "sha512-m/uYasxkUevcFTeRSM9TeLyPe2QDuqtjkeoTpP9SW0XxUWfcYrGDMkO/m2tTw+4NMAF9P2fU3Mw4ahNvo7QmsQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "peer": true + }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.1.tgz", - "integrity": "sha512-P9bSiAUnSSM7EmyRK+e5wgpqai86QOSv8BwvkGjLwYuOpaeomiZWifEos517CwbG+aZl1T4clSE1YqqH2JRs+g==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.28.1.tgz", + "integrity": "sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==", "cpu": [ "arm" ], @@ -22993,9 +23019,9 @@ "peer": true }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.1.tgz", - "integrity": "sha512-5RnjpACoxtS+aWOI1dURKno11d7krfpGDEn19jI8BuWmSBbUC4ytIADfROM1FZrFhQPSoP+KEa3NlEScznBTyQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.28.1.tgz", + "integrity": "sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg==", "cpu": [ "arm" ], @@ -23006,9 +23032,9 @@ "peer": true }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.1.tgz", - "integrity": "sha512-8mwmGD668m8WaGbthrEYZ9CBmPug2QPGWxhJxh/vCgBjro5o96gL04WLlg5BA233OCWLqERy4YUzX3bJGXaJgQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.28.1.tgz", + "integrity": "sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==", "cpu": [ "arm64" ], @@ -23019,9 +23045,9 @@ "peer": true }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.1.tgz", - "integrity": "sha512-dJX9u4r4bqInMGOAQoGYdwDP8lQiisWb9et+T84l2WXk41yEej8v2iGKodmdKimT8cTAYt0jFb+UEBxnPkbXEQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.28.1.tgz", + "integrity": "sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==", "cpu": [ "arm64" ], @@ -23031,10 +23057,23 @@ ], "peer": true }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.28.1.tgz", + "integrity": "sha512-vPul4uodvWvLhRco2w0GcyZcdyBfpfDRgNKU+p35AWEbJ/HPs1tOUrkSueVbBS0RQHAf/A+nNtDpvw95PeVKOA==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "peer": true + }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.1.tgz", - "integrity": "sha512-V72cXdTl4EI0x6FNmho4D502sy7ed+LuVW6Ym8aI6DRQ9hQZdp5sj0a2usYOlqvFBNKQnLQGwmYnujo2HvjCxQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.28.1.tgz", + "integrity": "sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A==", "cpu": [ "ppc64" ], @@ -23045,9 +23084,9 @@ "peer": true }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.1.tgz", - "integrity": "sha512-f+pJih7sxoKmbjghrM2RkWo2WHUW8UbfxIQiWo5yeCaCM0TveMEuAzKJte4QskBp1TIinpnRcxkquY+4WuY/tg==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.28.1.tgz", + "integrity": "sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==", "cpu": [ "riscv64" ], @@ -23058,9 +23097,9 @@ "peer": true }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.1.tgz", - "integrity": "sha512-qb1hMMT3Fr/Qz1OKovCuUM11MUNLUuHeBC2DPPAWUYYUAOFWaxInaTwTQmc7Fl5La7DShTEpmYwgdt2hG+4TEg==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.28.1.tgz", + "integrity": "sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg==", "cpu": [ "s390x" ], @@ -23071,9 +23110,9 @@ "peer": true }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.1.tgz", - "integrity": "sha512-7O5u/p6oKUFYjRbZkL2FLbwsyoJAjyeXHCU3O4ndvzg2OFO2GinFPSJFGbiwFDaCFc+k7gs9CF243PwdPQFh5g==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.28.1.tgz", + "integrity": "sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==", "cpu": [ "x64" ], @@ -23084,9 +23123,9 @@ "peer": true }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.1.tgz", - "integrity": "sha512-pDLkYITdYrH/9Cv/Vlj8HppDuLMDUBmgsM0+N+xLtFd18aXgM9Nyqupb/Uw+HeidhfYg2lD6CXvz6CjoVOaKjQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.28.1.tgz", + "integrity": "sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==", "cpu": [ "x64" ], @@ -23097,9 +23136,9 @@ "peer": true }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.1.tgz", - "integrity": "sha512-W2ZNI323O/8pJdBGil1oCauuCzmVd9lDmWBBqxYZcOqWD6aWqJtVBQ1dFrF4dYpZPks6F+xCZHfzG5hYlSHZ6g==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.28.1.tgz", + "integrity": "sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==", "cpu": [ "arm64" ], @@ -23110,9 +23149,9 @@ "peer": true }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.1.tgz", - "integrity": "sha512-ELfEX1/+eGZYMaCIbK4jqLxO1gyTSOIlZr6pbC4SRYFaSIDVKOnZNMdoZ+ON0mrFDp4+H5MhwNC1H/AhE3zQLg==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.28.1.tgz", + "integrity": "sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==", "cpu": [ "ia32" ], @@ -23123,9 +23162,9 @@ "peer": true }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.1.tgz", - "integrity": "sha512-yjk2MAkQmoaPYCSu35RLJ62+dz358nE83VfTePJRp8CG7aMg25mEJYpXFiD+NcevhX8LxD5OP5tktPXnXN7GDw==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.28.1.tgz", + "integrity": "sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==", "cpu": [ "x64" ], @@ -29985,9 +30024,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" }, "node_modules/@types/express": { "version": "4.17.21", @@ -36849,9 +36888,9 @@ "integrity": "sha512-1KX9ESmtl8xpT2LN2tFnKSbV4NiarbVi8DVb39ZriijvtTklyrT+4dT1wsGMHKD3CJUjXgvJzstm9qL9ICojGA==" }, "node_modules/cookie": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.0.tgz", - "integrity": "sha512-qCf+V4dtlNhSRXGAZatc1TasyFO6GjohcOul807YOb5ik3+kQSnb4d7iajeCL8QHaJ4uZEjCgiCJerKXwdRVlQ==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "dev": true, "engines": { "node": ">= 0.6" @@ -44121,9 +44160,9 @@ "dev": true }, "node_modules/graphql": { - "version": "16.8.1", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.8.1.tgz", - "integrity": "sha512-59LZHPdGZVh695Ud9lRzPBVTtlX9ZCV150Er2W43ro37wVof0ctenSaskPPjN7lVTIN8mSZt8PHUNKZuNQUuxw==", + "version": "16.8.2", + "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.8.2.tgz", + "integrity": "sha512-cvVIBILwuoSyD54U4cF/UXDh5yAobhNV/tPygI4lZhgOIJQE/WLWC4waBRb4I6bDVYb3OVx3lfHbaQOEoUD5sg==", "engines": { "node": "^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0" } @@ -54440,9 +54479,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", "funding": [ { "type": "github", @@ -54564,11 +54603,11 @@ "integrity": "sha512-xNbNjp/6M5vUV+mststgneJN9eJeJCDSYSBTaf3vxgvcKooP+8L0ATFpM8DGfmH7UWKJeoa24Qi33tBP9Ya3zA==" }, "node_modules/next": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.16.tgz", - "integrity": "sha512-LcO7WnFu6lYSvCzZoo1dB+IO0xXz5uEv52HF1IUN0IqVTUIZGHuuR10I5efiLadGt+4oZqTcNZyVVEem/TM5nA==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.17.tgz", + "integrity": "sha512-hNo/Zy701DDO3nzKkPmsLRlDfNCtb1OJxFUvjGEl04u7SFa3zwC6hqsOUzMajcaEOEV8ey1GjvByvrg0Qr5AiQ==", "dependencies": { - "@next/env": "14.2.16", + "@next/env": "14.2.17", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -54583,15 +54622,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.16", - "@next/swc-darwin-x64": "14.2.16", - "@next/swc-linux-arm64-gnu": "14.2.16", - "@next/swc-linux-arm64-musl": "14.2.16", - "@next/swc-linux-x64-gnu": "14.2.16", - "@next/swc-linux-x64-musl": "14.2.16", - "@next/swc-win32-arm64-msvc": "14.2.16", - "@next/swc-win32-ia32-msvc": "14.2.16", - "@next/swc-win32-x64-msvc": "14.2.16" + "@next/swc-darwin-arm64": "14.2.17", + "@next/swc-darwin-x64": "14.2.17", + "@next/swc-linux-arm64-gnu": "14.2.17", + "@next/swc-linux-arm64-musl": "14.2.17", + "@next/swc-linux-x64-gnu": "14.2.17", + "@next/swc-linux-x64-musl": "14.2.17", + "@next/swc-win32-arm64-msvc": "14.2.17", + "@next/swc-win32-ia32-msvc": "14.2.17", + "@next/swc-win32-x64-msvc": "14.2.17" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -63789,13 +63828,13 @@ } }, "node_modules/rollup": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.1.tgz", - "integrity": "sha512-Elx2UT8lzxxOXMpy5HWQGZqkrQOtrVDDa/bm9l10+U4rQnVzbL/LgZ4NOM1MPIDyHk69W4InuYDF5dzRh4Kw1A==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.28.1.tgz", + "integrity": "sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==", "optional": true, "peer": true, "dependencies": { - "@types/estree": "1.0.5" + "@types/estree": "1.0.6" }, "bin": { "rollup": "dist/bin/rollup" @@ -63805,22 +63844,25 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.18.1", - "@rollup/rollup-android-arm64": "4.18.1", - "@rollup/rollup-darwin-arm64": "4.18.1", - "@rollup/rollup-darwin-x64": "4.18.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.18.1", - "@rollup/rollup-linux-arm-musleabihf": "4.18.1", - "@rollup/rollup-linux-arm64-gnu": "4.18.1", - "@rollup/rollup-linux-arm64-musl": "4.18.1", - "@rollup/rollup-linux-powerpc64le-gnu": "4.18.1", - "@rollup/rollup-linux-riscv64-gnu": "4.18.1", - "@rollup/rollup-linux-s390x-gnu": "4.18.1", - "@rollup/rollup-linux-x64-gnu": "4.18.1", - "@rollup/rollup-linux-x64-musl": "4.18.1", - "@rollup/rollup-win32-arm64-msvc": "4.18.1", - "@rollup/rollup-win32-ia32-msvc": "4.18.1", - "@rollup/rollup-win32-x64-msvc": "4.18.1", + "@rollup/rollup-android-arm-eabi": "4.28.1", + "@rollup/rollup-android-arm64": "4.28.1", + "@rollup/rollup-darwin-arm64": "4.28.1", + "@rollup/rollup-darwin-x64": "4.28.1", + "@rollup/rollup-freebsd-arm64": "4.28.1", + "@rollup/rollup-freebsd-x64": "4.28.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.28.1", + "@rollup/rollup-linux-arm-musleabihf": "4.28.1", + "@rollup/rollup-linux-arm64-gnu": "4.28.1", + "@rollup/rollup-linux-arm64-musl": "4.28.1", + "@rollup/rollup-linux-loongarch64-gnu": "4.28.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.28.1", + "@rollup/rollup-linux-riscv64-gnu": "4.28.1", + "@rollup/rollup-linux-s390x-gnu": "4.28.1", + "@rollup/rollup-linux-x64-gnu": "4.28.1", + "@rollup/rollup-linux-x64-musl": "4.28.1", + "@rollup/rollup-win32-arm64-msvc": "4.28.1", + "@rollup/rollup-win32-ia32-msvc": "4.28.1", + "@rollup/rollup-win32-x64-msvc": "4.28.1", "fsevents": "~2.3.2" } }, @@ -84247,9 +84289,9 @@ } }, "@next/env": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.16.tgz", - "integrity": "sha512-fLrX5TfJzHCbnZ9YUSnGW63tMV3L4nSfhgOQ0iCcX21Pt+VSTDuaLsSuL8J/2XAiVA5AnzvXDpf6pMs60QxOag==" + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.17.tgz", + "integrity": "sha512-MCgO7VHxXo8sYR/0z+sk9fGyJJU636JyRmkjc7ZJY8Hurl8df35qG5hoAh5KMs75FLjhlEo9bb2LGe89Y/scDA==" }, "@next/eslint-plugin-next": { "version": "14.2.15", @@ -84294,57 +84336,57 @@ } }, "@next/swc-darwin-arm64": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.16.tgz", - "integrity": "sha512-uFT34QojYkf0+nn6MEZ4gIWQ5aqGF11uIZ1HSxG+cSbj+Mg3+tYm8qXYd3dKN5jqKUm5rBVvf1PBRO/MeQ6rxw==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.17.tgz", + "integrity": "sha512-WiOf5nElPknrhRMTipXYTJcUz7+8IAjOYw3vXzj3BYRcVY0hRHKWgTgQ5439EvzQyHEko77XK+yN9x9OJ0oOog==", "optional": true }, "@next/swc-darwin-x64": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.16.tgz", - "integrity": "sha512-mCecsFkYezem0QiZlg2bau3Xul77VxUD38b/auAjohMA22G9KTJneUYMv78vWoCCFkleFAhY1NIvbyjj1ncG9g==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.17.tgz", + "integrity": "sha512-29y425wYnL17cvtxrDQWC3CkXe/oRrdt8ie61S03VrpwpPRI0XsnTvtKO06XCisK4alaMnZlf8riwZIbJTaSHQ==", "optional": true }, "@next/swc-linux-arm64-gnu": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.16.tgz", - "integrity": "sha512-yhkNA36+ECTC91KSyZcgWgKrYIyDnXZj8PqtJ+c2pMvj45xf7y/HrgI17hLdrcYamLfVt7pBaJUMxADtPaczHA==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.17.tgz", + "integrity": "sha512-SSHLZls3ZwNEHsc+d0ynKS+7Af0Nr8+KTUBAy9pm6xz9SHkJ/TeuEg6W3cbbcMSh6j4ITvrjv3Oi8n27VR+IPw==", "optional": true }, "@next/swc-linux-arm64-musl": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.16.tgz", - "integrity": "sha512-X2YSyu5RMys8R2lA0yLMCOCtqFOoLxrq2YbazFvcPOE4i/isubYjkh+JCpRmqYfEuCVltvlo+oGfj/b5T2pKUA==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.17.tgz", + "integrity": "sha512-VFge37us5LNPatB4F7iYeuGs9Dprqe4ZkW7lOEJM91r+Wf8EIdViWHLpIwfdDXinvCdLl6b4VyLpEBwpkctJHA==", "optional": true }, "@next/swc-linux-x64-gnu": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.16.tgz", - "integrity": "sha512-9AGcX7VAkGbc5zTSa+bjQ757tkjr6C/pKS7OK8cX7QEiK6MHIIezBLcQ7gQqbDW2k5yaqba2aDtaBeyyZh1i6Q==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.17.tgz", + "integrity": "sha512-aaQlpxUVb9RZ41adlTYVQ3xvYEfBPUC8+6rDgmQ/0l7SvK8S1YNJzPmDPX6a4t0jLtIoNk7j+nroS/pB4nx7vQ==", "optional": true }, "@next/swc-linux-x64-musl": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.16.tgz", - "integrity": "sha512-Klgeagrdun4WWDaOizdbtIIm8khUDQJ/5cRzdpXHfkbY91LxBXeejL4kbZBrpR/nmgRrQvmz4l3OtttNVkz2Sg==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.17.tgz", + "integrity": "sha512-HSyEiFaEY3ay5iATDqEup5WAfrhMATNJm8dYx3ZxL+e9eKv10XKZCwtZByDoLST7CyBmyDz+OFJL1wigyXeaoA==", "optional": true }, "@next/swc-win32-arm64-msvc": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.16.tgz", - "integrity": "sha512-PwW8A1UC1Y0xIm83G3yFGPiOBftJK4zukTmk7DI1CebyMOoaVpd8aSy7K6GhobzhkjYvqS/QmzcfsWG2Dwizdg==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.17.tgz", + "integrity": "sha512-h5qM9Btqv87eYH8ArrnLoAHLyi79oPTP2vlGNSg4CDvUiXgi7l0+5KuEGp5pJoMhjuv9ChRdm7mRlUUACeBt4w==", "optional": true }, "@next/swc-win32-ia32-msvc": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.16.tgz", - "integrity": "sha512-jhPl3nN0oKEshJBNDAo0etGMzv0j3q3VYorTSFqH1o3rwv1MQRdor27u1zhkgsHPNeY1jxcgyx1ZsCkDD1IHgg==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.17.tgz", + "integrity": "sha512-BD/G++GKSLexQjdyoEUgyo5nClU7er5rK0sE+HlEqnldJSm96CIr/+YOTT063LVTT/dUOeQsNgp5DXr86/K7/A==", "optional": true }, "@next/swc-win32-x64-msvc": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.16.tgz", - "integrity": "sha512-OA7NtfxgirCjfqt+02BqxC3MIgM/JaGjw9tOe4fyZgPsqfseNiMPnCRP44Pfs+Gpo9zPN+SXaFsgP6vk8d571A==", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.17.tgz", + "integrity": "sha512-vkQfN1+4V4KqDibkW2q0sJ6CxQuXq5l2ma3z0BRcfIqkAMZiiW67T9yCpwqJKP68QghBtPEFjPAlaqe38O6frw==", "optional": true }, "@neynar/nodejs-sdk": { @@ -89694,114 +89736,135 @@ "integrity": "sha512-C7c51Nn4yTxXFKvgh2txJFNweaVcfUPQxwEUFw4aWsCmfiBDJsTSwviIF8EcwjQ6k8bPyMWCl1vw4BdxE569Cg==" }, "@rollup/rollup-android-arm-eabi": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.1.tgz", - "integrity": "sha512-lncuC4aHicncmbORnx+dUaAgzee9cm/PbIqgWz1PpXuwc+sa1Ct83tnqUDy/GFKleLiN7ZIeytM6KJ4cAn1SxA==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.28.1.tgz", + "integrity": "sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==", "optional": true, "peer": true }, "@rollup/rollup-android-arm64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.1.tgz", - "integrity": "sha512-F/tkdw0WSs4ojqz5Ovrw5r9odqzFjb5LIgHdHZG65dFI1lWTWRVy32KDJLKRISHgJvqUeUhdIvy43fX41znyDg==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.28.1.tgz", + "integrity": "sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==", "optional": true, "peer": true }, "@rollup/rollup-darwin-arm64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.1.tgz", - "integrity": "sha512-vk+ma8iC1ebje/ahpxpnrfVQJibTMyHdWpOGZ3JpQ7Mgn/3QNHmPq7YwjZbIE7km73dH5M1e6MRRsnEBW7v5CQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.28.1.tgz", + "integrity": "sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==", "optional": true, "peer": true }, "@rollup/rollup-darwin-x64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.1.tgz", - "integrity": "sha512-IgpzXKauRe1Tafcej9STjSSuG0Ghu/xGYH+qG6JwsAUxXrnkvNHcq/NL6nz1+jzvWAnQkuAJ4uIwGB48K9OCGA==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.28.1.tgz", + "integrity": "sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==", + "optional": true, + "peer": true + }, + "@rollup/rollup-freebsd-arm64": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.28.1.tgz", + "integrity": "sha512-HTDPdY1caUcU4qK23FeeGxCdJF64cKkqajU0iBnTVxS8F7H/7BewvYoG+va1KPSL63kQ1PGNyiwKOfReavzvNA==", + "optional": true, + "peer": true + }, + "@rollup/rollup-freebsd-x64": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.28.1.tgz", + "integrity": "sha512-m/uYasxkUevcFTeRSM9TeLyPe2QDuqtjkeoTpP9SW0XxUWfcYrGDMkO/m2tTw+4NMAF9P2fU3Mw4ahNvo7QmsQ==", "optional": true, "peer": true }, "@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.1.tgz", - "integrity": "sha512-P9bSiAUnSSM7EmyRK+e5wgpqai86QOSv8BwvkGjLwYuOpaeomiZWifEos517CwbG+aZl1T4clSE1YqqH2JRs+g==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.28.1.tgz", + "integrity": "sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==", "optional": true, "peer": true }, "@rollup/rollup-linux-arm-musleabihf": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.1.tgz", - "integrity": "sha512-5RnjpACoxtS+aWOI1dURKno11d7krfpGDEn19jI8BuWmSBbUC4ytIADfROM1FZrFhQPSoP+KEa3NlEScznBTyQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.28.1.tgz", + "integrity": "sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg==", "optional": true, "peer": true }, "@rollup/rollup-linux-arm64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.1.tgz", - "integrity": "sha512-8mwmGD668m8WaGbthrEYZ9CBmPug2QPGWxhJxh/vCgBjro5o96gL04WLlg5BA233OCWLqERy4YUzX3bJGXaJgQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.28.1.tgz", + "integrity": "sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==", "optional": true, "peer": true }, "@rollup/rollup-linux-arm64-musl": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.1.tgz", - "integrity": "sha512-dJX9u4r4bqInMGOAQoGYdwDP8lQiisWb9et+T84l2WXk41yEej8v2iGKodmdKimT8cTAYt0jFb+UEBxnPkbXEQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.28.1.tgz", + "integrity": "sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==", + "optional": true, + "peer": true + }, + "@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.28.1.tgz", + "integrity": "sha512-vPul4uodvWvLhRco2w0GcyZcdyBfpfDRgNKU+p35AWEbJ/HPs1tOUrkSueVbBS0RQHAf/A+nNtDpvw95PeVKOA==", "optional": true, "peer": true }, "@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.1.tgz", - "integrity": "sha512-V72cXdTl4EI0x6FNmho4D502sy7ed+LuVW6Ym8aI6DRQ9hQZdp5sj0a2usYOlqvFBNKQnLQGwmYnujo2HvjCxQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.28.1.tgz", + "integrity": "sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A==", "optional": true, "peer": true }, "@rollup/rollup-linux-riscv64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.1.tgz", - "integrity": "sha512-f+pJih7sxoKmbjghrM2RkWo2WHUW8UbfxIQiWo5yeCaCM0TveMEuAzKJte4QskBp1TIinpnRcxkquY+4WuY/tg==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.28.1.tgz", + "integrity": "sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==", "optional": true, "peer": true }, "@rollup/rollup-linux-s390x-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.1.tgz", - "integrity": "sha512-qb1hMMT3Fr/Qz1OKovCuUM11MUNLUuHeBC2DPPAWUYYUAOFWaxInaTwTQmc7Fl5La7DShTEpmYwgdt2hG+4TEg==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.28.1.tgz", + "integrity": "sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg==", "optional": true, "peer": true }, "@rollup/rollup-linux-x64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.1.tgz", - "integrity": "sha512-7O5u/p6oKUFYjRbZkL2FLbwsyoJAjyeXHCU3O4ndvzg2OFO2GinFPSJFGbiwFDaCFc+k7gs9CF243PwdPQFh5g==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.28.1.tgz", + "integrity": "sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==", "optional": true, "peer": true }, "@rollup/rollup-linux-x64-musl": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.1.tgz", - "integrity": "sha512-pDLkYITdYrH/9Cv/Vlj8HppDuLMDUBmgsM0+N+xLtFd18aXgM9Nyqupb/Uw+HeidhfYg2lD6CXvz6CjoVOaKjQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.28.1.tgz", + "integrity": "sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==", "optional": true, "peer": true }, "@rollup/rollup-win32-arm64-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.1.tgz", - "integrity": "sha512-W2ZNI323O/8pJdBGil1oCauuCzmVd9lDmWBBqxYZcOqWD6aWqJtVBQ1dFrF4dYpZPks6F+xCZHfzG5hYlSHZ6g==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.28.1.tgz", + "integrity": "sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==", "optional": true, "peer": true }, "@rollup/rollup-win32-ia32-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.1.tgz", - "integrity": "sha512-ELfEX1/+eGZYMaCIbK4jqLxO1gyTSOIlZr6pbC4SRYFaSIDVKOnZNMdoZ+ON0mrFDp4+H5MhwNC1H/AhE3zQLg==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.28.1.tgz", + "integrity": "sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==", "optional": true, "peer": true }, "@rollup/rollup-win32-x64-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.1.tgz", - "integrity": "sha512-yjk2MAkQmoaPYCSu35RLJ62+dz358nE83VfTePJRp8CG7aMg25mEJYpXFiD+NcevhX8LxD5OP5tktPXnXN7GDw==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.28.1.tgz", + "integrity": "sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==", "optional": true, "peer": true }, @@ -94791,9 +94854,9 @@ } }, "@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" }, "@types/express": { "version": "4.17.21", @@ -100868,9 +100931,9 @@ "integrity": "sha512-1KX9ESmtl8xpT2LN2tFnKSbV4NiarbVi8DVb39ZriijvtTklyrT+4dT1wsGMHKD3CJUjXgvJzstm9qL9ICojGA==" }, "cookie": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.0.tgz", - "integrity": "sha512-qCf+V4dtlNhSRXGAZatc1TasyFO6GjohcOul807YOb5ik3+kQSnb4d7iajeCL8QHaJ4uZEjCgiCJerKXwdRVlQ==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "dev": true }, "cookie-es": { @@ -106332,9 +106395,9 @@ "dev": true }, "graphql": { - "version": "16.8.1", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.8.1.tgz", - "integrity": "sha512-59LZHPdGZVh695Ud9lRzPBVTtlX9ZCV150Er2W43ro37wVof0ctenSaskPPjN7lVTIN8mSZt8PHUNKZuNQUuxw==" + "version": "16.8.2", + "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.8.2.tgz", + "integrity": "sha512-cvVIBILwuoSyD54U4cF/UXDh5yAobhNV/tPygI4lZhgOIJQE/WLWC4waBRb4I6bDVYb3OVx3lfHbaQOEoUD5sg==" }, "graphql-relay": { "version": "0.10.2", @@ -114140,9 +114203,9 @@ "integrity": "sha512-bYYwNCdNc5ea6/Lwh1uioU1/7aaKa3EPmNQ2weTm8PWSpbWrsaWHePe0Zq4SF+D3F3JX3cn+QdktOPCf1meOqw==" }, "nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==" + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==" }, "nanoid-dictionary": { "version": "3.0.0", @@ -114233,20 +114296,20 @@ "integrity": "sha512-xNbNjp/6M5vUV+mststgneJN9eJeJCDSYSBTaf3vxgvcKooP+8L0ATFpM8DGfmH7UWKJeoa24Qi33tBP9Ya3zA==" }, "next": { - "version": "14.2.16", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.16.tgz", - "integrity": "sha512-LcO7WnFu6lYSvCzZoo1dB+IO0xXz5uEv52HF1IUN0IqVTUIZGHuuR10I5efiLadGt+4oZqTcNZyVVEem/TM5nA==", - "requires": { - "@next/env": "14.2.16", - "@next/swc-darwin-arm64": "14.2.16", - "@next/swc-darwin-x64": "14.2.16", - "@next/swc-linux-arm64-gnu": "14.2.16", - "@next/swc-linux-arm64-musl": "14.2.16", - "@next/swc-linux-x64-gnu": "14.2.16", - "@next/swc-linux-x64-musl": "14.2.16", - "@next/swc-win32-arm64-msvc": "14.2.16", - "@next/swc-win32-ia32-msvc": "14.2.16", - "@next/swc-win32-x64-msvc": "14.2.16", + "version": "14.2.17", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.17.tgz", + "integrity": "sha512-hNo/Zy701DDO3nzKkPmsLRlDfNCtb1OJxFUvjGEl04u7SFa3zwC6hqsOUzMajcaEOEV8ey1GjvByvrg0Qr5AiQ==", + "requires": { + "@next/env": "14.2.17", + "@next/swc-darwin-arm64": "14.2.17", + "@next/swc-darwin-x64": "14.2.17", + "@next/swc-linux-arm64-gnu": "14.2.17", + "@next/swc-linux-arm64-musl": "14.2.17", + "@next/swc-linux-x64-gnu": "14.2.17", + "@next/swc-linux-x64-musl": "14.2.17", + "@next/swc-win32-arm64-msvc": "14.2.17", + "@next/swc-win32-ia32-msvc": "14.2.17", + "@next/swc-win32-x64-msvc": "14.2.17", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -120785,29 +120848,32 @@ } }, "rollup": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.1.tgz", - "integrity": "sha512-Elx2UT8lzxxOXMpy5HWQGZqkrQOtrVDDa/bm9l10+U4rQnVzbL/LgZ4NOM1MPIDyHk69W4InuYDF5dzRh4Kw1A==", - "optional": true, - "peer": true, - "requires": { - "@rollup/rollup-android-arm-eabi": "4.18.1", - "@rollup/rollup-android-arm64": "4.18.1", - "@rollup/rollup-darwin-arm64": "4.18.1", - "@rollup/rollup-darwin-x64": "4.18.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.18.1", - "@rollup/rollup-linux-arm-musleabihf": "4.18.1", - "@rollup/rollup-linux-arm64-gnu": "4.18.1", - "@rollup/rollup-linux-arm64-musl": "4.18.1", - "@rollup/rollup-linux-powerpc64le-gnu": "4.18.1", - "@rollup/rollup-linux-riscv64-gnu": "4.18.1", - "@rollup/rollup-linux-s390x-gnu": "4.18.1", - "@rollup/rollup-linux-x64-gnu": "4.18.1", - "@rollup/rollup-linux-x64-musl": "4.18.1", - "@rollup/rollup-win32-arm64-msvc": "4.18.1", - "@rollup/rollup-win32-ia32-msvc": "4.18.1", - "@rollup/rollup-win32-x64-msvc": "4.18.1", - "@types/estree": "1.0.5", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.28.1.tgz", + "integrity": "sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==", + "optional": true, + "peer": true, + "requires": { + "@rollup/rollup-android-arm-eabi": "4.28.1", + "@rollup/rollup-android-arm64": "4.28.1", + "@rollup/rollup-darwin-arm64": "4.28.1", + "@rollup/rollup-darwin-x64": "4.28.1", + "@rollup/rollup-freebsd-arm64": "4.28.1", + "@rollup/rollup-freebsd-x64": "4.28.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.28.1", + "@rollup/rollup-linux-arm-musleabihf": "4.28.1", + "@rollup/rollup-linux-arm64-gnu": "4.28.1", + "@rollup/rollup-linux-arm64-musl": "4.28.1", + "@rollup/rollup-linux-loongarch64-gnu": "4.28.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.28.1", + "@rollup/rollup-linux-riscv64-gnu": "4.28.1", + "@rollup/rollup-linux-s390x-gnu": "4.28.1", + "@rollup/rollup-linux-x64-gnu": "4.28.1", + "@rollup/rollup-linux-x64-musl": "4.28.1", + "@rollup/rollup-win32-arm64-msvc": "4.28.1", + "@rollup/rollup-win32-ia32-msvc": "4.28.1", + "@rollup/rollup-win32-x64-msvc": "4.28.1", + "@types/estree": "1.0.6", "fsevents": "~2.3.2" } }, diff --git a/package.json b/package.json index b375c39e61..72abd35325 100644 --- a/package.json +++ b/package.json @@ -257,7 +257,7 @@ "frames.js": "^0.18.1", "gaxios": "^5.0.2", "google-auth-library": "^8.7.0", - "graphql": "^16.8.1", + "graphql": "^16.8.2", "hot-shots": "^9.0.0", "html-to-text": "^8.2.0", "i": "^0.3.7", @@ -279,9 +279,9 @@ "millify": "^4.0.0", "mixpanel": "^0.17.0", "msw-storybook-addon": "^2.0.0", - "nanoid": "^3.3.6", + "nanoid": "^3.3.8", "nanoid-dictionary": "^3.0.0", - "next": "^14.2.16", + "next": "^14.2.17", "next-bundle-analyzer": "^0.6.8", "next-connect": "^0.13.0", "next-swagger-doc": "^0.3.6", @@ -421,7 +421,7 @@ "aws-cdk": "^2.151.0", "chromatic": "^6.21.0", "concurrently": "^8.2.1", - "cookie": "^0.7.0", + "cookie": "^0.7.1", "cross-env": "^7.0.3", "dependency-cruiser": "^13.1.5", "dotenv": "^16.3.1", diff --git a/packages/mixpanel/src/utils.ts b/packages/mixpanel/src/utils.ts index 506372ecd9..a92a3e0754 100644 --- a/packages/mixpanel/src/utils.ts +++ b/packages/mixpanel/src/utils.ts @@ -45,7 +45,7 @@ export function getUTMParamsFromSearch(searchString: string): UTMParams | undefi }; } -const platform = env('SCOUTGAME_PLATFORM') || process.env.REACT_APP_SCOUTGAME_PLATFORM; +const platform = env('SCOUTGAME_PLATFORM') || process.env.REACT_APP_SCOUTGAME_PLATFORM || 'webapp'; function isPlatform(_platform: string = ''): _platform is ReferralPlatform { const availablePlatforms = Object.values(ReferralPlatform); diff --git a/apps/scoutgame/components/builders/BuilderInviteCard/BuilderInviteCard.tsx b/packages/scoutgame-ui/src/components/builders/BuilderInviteCard/BuilderInviteCard.tsx similarity index 93% rename from apps/scoutgame/components/builders/BuilderInviteCard/BuilderInviteCard.tsx rename to packages/scoutgame-ui/src/components/builders/BuilderInviteCard/BuilderInviteCard.tsx index 4d3334402b..df1a4cb94f 100644 --- a/apps/scoutgame/components/builders/BuilderInviteCard/BuilderInviteCard.tsx +++ b/packages/scoutgame-ui/src/components/builders/BuilderInviteCard/BuilderInviteCard.tsx @@ -1,13 +1,13 @@ 'use client'; import { Button, Divider, List, ListItem, ListItemText, Paper, Stack, Typography } from '@mui/material'; -import { JoinGithubButton } from '@packages/scoutgame-ui/components/common/JoinGithubButton'; -import { useMdScreen } from '@packages/scoutgame-ui/hooks/useMediaScreens'; -import { useUser } from '@packages/scoutgame-ui/providers/UserProvider'; import Image from 'next/image'; import { useState } from 'react'; -import { Dialog } from 'components/common/Dialog'; +import { useMdScreen } from '../../../hooks/useMediaScreens'; +import { useUser } from '../../../providers/UserProvider'; +import { Dialog } from '../../common/Dialog'; +import { JoinGithubButton } from '../../common/JoinGithubButton'; function InviteModal({ open, onClose, signedIn }: { open: boolean; onClose: () => void; signedIn: boolean }) { return ( diff --git a/apps/scoutgame/components/builders/BuilderPageTable/BuilderPageTable.tsx b/packages/scoutgame-ui/src/components/builders/BuilderPageTable/BuilderPageTable.tsx similarity index 90% rename from apps/scoutgame/components/builders/BuilderPageTable/BuilderPageTable.tsx rename to packages/scoutgame-ui/src/components/builders/BuilderPageTable/BuilderPageTable.tsx index d81474e425..fc1eb08fb8 100644 --- a/apps/scoutgame/components/builders/BuilderPageTable/BuilderPageTable.tsx +++ b/packages/scoutgame-ui/src/components/builders/BuilderPageTable/BuilderPageTable.tsx @@ -1,10 +1,9 @@ import 'server-only'; import { getBuilderActivities } from '@packages/scoutgame/builders/getBuilderActivities'; +import { getLeaderboard } from '@packages/scoutgame/builders/getLeaderboard'; import { safeAwaitSSRData } from '@packages/scoutgame/utils/async'; -import { getLeaderboard } from 'lib/builders/getLeaderboard'; - import { ActivityTable } from './components/ActivityTable'; import { LeaderboardTable } from './components/LeaderboardTable'; diff --git a/packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/ActivityTable.tsx b/packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/ActivityTable.tsx new file mode 100644 index 0000000000..b2acf7889d --- /dev/null +++ b/packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/ActivityTable.tsx @@ -0,0 +1,190 @@ +import { Stack, TableHead, Typography } from '@mui/material'; +import Table from '@mui/material/Table'; +import TableBody from '@mui/material/TableBody'; +import TableCell from '@mui/material/TableCell'; +import type { BonusPartner } from '@packages/scoutgame/bonus'; +import { bonusPartnersRecord } from '@packages/scoutgame/bonus'; +import type { BuilderActivity } from '@packages/scoutgame/builders/getBuilderActivities'; +import { getRelativeTime } from '@packages/utils/dates'; +import Image from 'next/image'; +import Link from 'next/link'; +import { BiLike } from 'react-icons/bi'; +import { LuBookMarked } from 'react-icons/lu'; + +import { secondaryTextColorDarkMode } from '../../../../theme/colors'; +import { Avatar } from '../../../common/Avatar'; +import { Hidden } from '../../../common/Hidden'; +import { GemsIcon } from '../../../common/Icons'; +import { + BuilderActivityGems, + getActivityLabel +} from '../../../profile/components/BuilderProfile/BuilderActivitiesList'; + +import { CommonTableRow } from './CommonTableRow'; +import { TableCellText } from './TableCellText'; + +export function BuilderActivityAction({ activity }: { activity: BuilderActivity }) { + return ( + + + {activity.type === 'github_event' ? ( + activity.bonusPartner && bonusPartnersRecord[activity.bonusPartner as BonusPartner] ? ( + Bonus Partner + ) : ( + + ) + ) : activity.type === 'nft_purchase' ? ( + + ) : null} + + + + {getActivityLabel(activity)} + + + + + {getActivityLabel(activity, true)} + + + + + + + {activity.type === 'nft_purchase' && ( + + {activity.scout.displayName} + + )} + {activity.type === 'github_event' && ( + + {activity.repo} + + )} + + + ); +} + +export function ActivityTable({ activities }: { activities: BuilderActivity[] }) { + return ( + + + + BUILDER + + + ACTION + + + EARNED + + + + + + + + + + {activities.map((activity) => { + const relativeTime = getRelativeTime(activity.createdAt) + ?.replace(' days', 'd') + ?.replace(' day', 'd') + ?.replace(' hrs.', 'h') + ?.replace(' hr.', 'h') + ?.replace(' min.', 'm') + ?.replace(' sec.', 's'); + + return ( + + + + + {activity.displayName} + + + + + + + + + {relativeTime} + + + ); + })} + +
+ ); +} diff --git a/apps/scoutgame/components/builders/BuilderPageTable/components/CommonTableRow.tsx b/packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/CommonTableRow.tsx similarity index 94% rename from apps/scoutgame/components/builders/BuilderPageTable/components/CommonTableRow.tsx rename to packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/CommonTableRow.tsx index 3f58d79aa8..3eae865f57 100644 --- a/apps/scoutgame/components/builders/BuilderPageTable/components/CommonTableRow.tsx +++ b/packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/CommonTableRow.tsx @@ -12,13 +12,13 @@ const tableRowSx = { '&:first-of-type': { paddingLeft: { xs: '10px', - md: '20px' + md: '15px' } }, '&:last-child': { paddingRight: { xs: '10px', - md: '20px' + md: '15px' } } } diff --git a/apps/scoutgame/components/builders/BuilderPageTable/components/LeaderboardTable.tsx b/packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/LeaderboardTable.tsx similarity index 89% rename from apps/scoutgame/components/builders/BuilderPageTable/components/LeaderboardTable.tsx rename to packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/LeaderboardTable.tsx index bf21e8f973..c903138520 100644 --- a/apps/scoutgame/components/builders/BuilderPageTable/components/LeaderboardTable.tsx +++ b/packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/LeaderboardTable.tsx @@ -4,14 +4,14 @@ import { Box, Stack, TableHead } from '@mui/material'; import Table from '@mui/material/Table'; import TableBody from '@mui/material/TableBody'; import TableCell from '@mui/material/TableCell'; +import type { LeaderBoardRow } from '@packages/scoutgame/builders/getLeaderboard'; import type { ISOWeek } from '@packages/scoutgame/dates'; -import { Avatar } from '@packages/scoutgame-ui/components/common/Avatar'; -import { getSXProps } from '@packages/scoutgame-ui/components/common/Hidden'; -import { GemsIcon } from '@packages/scoutgame-ui/components/common/Icons'; -import { ScoutButton } from '@packages/scoutgame-ui/components/common/ScoutButton/ScoutButton'; import Link from 'next/link'; -import type { LeaderBoardRow } from 'lib/builders/getLeaderboard'; +import { Avatar } from '../../../common/Avatar'; +import { getSXProps } from '../../../common/Hidden'; +import { GemsIcon } from '../../../common/Icons'; +import { ScoutButton } from '../../../common/ScoutButton/ScoutButton'; import { CommonTableRow } from './CommonTableRow'; import { TableCellText } from './TableCellText'; diff --git a/apps/scoutgame/components/builders/BuilderPageTable/components/TableCellText.tsx b/packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/TableCellText.tsx similarity index 100% rename from apps/scoutgame/components/builders/BuilderPageTable/components/TableCellText.tsx rename to packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/TableCellText.tsx diff --git a/apps/scoutgame/components/builders/BuilderPageTable/components/WeekTableHead.tsx b/packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/WeekTableHead.tsx similarity index 100% rename from apps/scoutgame/components/builders/BuilderPageTable/components/WeekTableHead.tsx rename to packages/scoutgame-ui/src/components/builders/BuilderPageTable/components/WeekTableHead.tsx diff --git a/apps/scoutgame/components/builders/BuildersPage.tsx b/packages/scoutgame-ui/src/components/builders/BuildersPage.tsx similarity index 86% rename from apps/scoutgame/components/builders/BuildersPage.tsx rename to packages/scoutgame-ui/src/components/builders/BuildersPage.tsx index d12fbf2d54..cf96bbb7af 100644 --- a/apps/scoutgame/components/builders/BuildersPage.tsx +++ b/packages/scoutgame-ui/src/components/builders/BuildersPage.tsx @@ -1,9 +1,11 @@ +import 'server-only'; + import { Grid2 as Grid, Stack, Typography } from '@mui/material'; -import { HeaderMessage } from '@packages/scoutgame-ui/components/common/Header/HeaderMessage'; -import { TabsMenu, type TabItem } from '@packages/scoutgame-ui/components/common/Tabs/TabsMenu'; import { Suspense } from 'react'; -import { LoadingTable } from 'components/common/Loading/LoadingTable'; +import { HeaderMessage } from '../common/Header/HeaderMessage'; +import { LoadingTable } from '../common/Loading/LoadingTable'; +import { TabsMenu, type TabItem } from '../common/Tabs/TabsMenu'; import { BuilderPageInviteCard } from './BuilderInviteCard/BuilderInviteCard'; import { BuilderPageTable } from './BuilderPageTable/BuilderPageTable'; @@ -26,7 +28,7 @@ export function BuildersPage({ week, tab }: { week: string; tab: string }) { xs: 'calc(100vh - 165px)' }} > - + - + diff --git a/apps/scoutgame/components/builders/PartnerRewardsCarousel/PartnerRewardsCarousel.tsx b/packages/scoutgame-ui/src/components/builders/PartnerRewardsCarousel/PartnerRewardsCarousel.tsx similarity index 92% rename from apps/scoutgame/components/builders/PartnerRewardsCarousel/PartnerRewardsCarousel.tsx rename to packages/scoutgame-ui/src/components/builders/PartnerRewardsCarousel/PartnerRewardsCarousel.tsx index 4c773162f6..626cb0c2ef 100644 --- a/apps/scoutgame/components/builders/PartnerRewardsCarousel/PartnerRewardsCarousel.tsx +++ b/packages/scoutgame-ui/src/components/builders/PartnerRewardsCarousel/PartnerRewardsCarousel.tsx @@ -1,11 +1,12 @@ 'use client'; import { Box } from '@mui/material'; -import { Carousel } from '@packages/scoutgame-ui/components/common/Carousel/Carousel'; -import { useMdScreen } from '@packages/scoutgame-ui/hooks/useMediaScreens'; import Image from 'next/image'; import Link from 'next/link'; +import { useMdScreen } from '../../../hooks/useMediaScreens'; +import { Carousel } from '../../common/Carousel/Carousel'; + const partnerInfos = [ { logo: 'talent.jpg', name: 'talent', infoPath: 'talent-protocol' }, { logo: 'celo.png', name: 'celo', infoPath: 'celo' }, @@ -56,6 +57,7 @@ export function PartnerRewardsCarousel() { `` } diff --git a/packages/scoutgame-ui/src/components/claim/ClaimPage.tsx b/packages/scoutgame-ui/src/components/claim/ClaimPage.tsx index 7e2d7aec4f..1d26ad3956 100644 --- a/packages/scoutgame-ui/src/components/claim/ClaimPage.tsx +++ b/packages/scoutgame-ui/src/components/claim/ClaimPage.tsx @@ -2,8 +2,9 @@ import { Stack } from '@mui/material'; import type { BonusPartner } from '@packages/scoutgame/bonus'; import { Suspense } from 'react'; +import { LoadingTable } from '../common/Loading/LoadingTable'; + import { BuilderRewardsScreen } from './components/BuilderRewardsScreen/BuilderRewardsScreen'; -import { LoadingTable } from './components/common/LoadingTable'; import { PointsClaimScreen } from './components/PointsClaimScreen/PointsClaimScreen'; import { ClaimedPointsTable } from './components/PointsTable/ClaimedPointsTable'; import { UnclaimedPointsTable } from './components/PointsTable/UnclaimedPointsTable'; diff --git a/packages/scoutgame-ui/src/components/claim/components/BuilderRewardsScreen/BuilderRewardsScreen.tsx b/packages/scoutgame-ui/src/components/claim/components/BuilderRewardsScreen/BuilderRewardsScreen.tsx index a2b79deb4e..d1a272b5f8 100644 --- a/packages/scoutgame-ui/src/components/claim/components/BuilderRewardsScreen/BuilderRewardsScreen.tsx +++ b/packages/scoutgame-ui/src/components/claim/components/BuilderRewardsScreen/BuilderRewardsScreen.tsx @@ -1,6 +1,6 @@ import ChevronLeftIcon from '@mui/icons-material/ChevronLeft'; import ChevronRightIcon from '@mui/icons-material/ChevronRight'; -import { IconButton, Paper, Stack, Typography } from '@mui/material'; +import { IconButton, Stack, Typography } from '@mui/material'; import { getLastWeek, currentSeason, @@ -12,8 +12,8 @@ import { import Link from 'next/link'; import { Suspense } from 'react'; +import { LoadingTable } from '../../../common/Loading/LoadingTable'; import { TabsMenu } from '../../../common/Tabs/TabsMenu'; -import { LoadingTable } from '../common/LoadingTable'; import { BuilderRewardsTableContainer } from './BuilderRewardsTableContainer'; @@ -25,13 +25,11 @@ export function BuilderRewardsScreen({ period }: { period: string }) { const nextWeek = week ? (week === lastWeek ? null : getNextWeek(week)) : null; return ( - + Builder Rewards - - See how many Scout Points your Builders have earned for you! - + See how many Scout Points your Builders have earned for you! Time to scout some Builders! diff --git a/packages/scoutgame-ui/src/components/claim/components/PointsClaimScreen/PointsClaimScreen.tsx b/packages/scoutgame-ui/src/components/claim/components/PointsClaimScreen/PointsClaimScreen.tsx index c9ffb96fc3..9657de76c1 100644 --- a/packages/scoutgame-ui/src/components/claim/components/PointsClaimScreen/PointsClaimScreen.tsx +++ b/packages/scoutgame-ui/src/components/claim/components/PointsClaimScreen/PointsClaimScreen.tsx @@ -60,7 +60,6 @@ export function PointsClaimScreen({ padding: 4, borderRadius: 2, display: 'flex', - backgroundColor: 'background.dark', width: '100%', alignItems: 'center', justifyContent: 'center', diff --git a/packages/scoutgame-ui/src/components/claim/components/PointsTable/PointsTable.tsx b/packages/scoutgame-ui/src/components/claim/components/PointsTable/PointsTable.tsx index 926d3f9eda..d1c6d8bccf 100644 --- a/packages/scoutgame-ui/src/components/claim/components/PointsTable/PointsTable.tsx +++ b/packages/scoutgame-ui/src/components/claim/components/PointsTable/PointsTable.tsx @@ -29,10 +29,8 @@ export function PointsTable({ px: 2.5, py: 4, display: 'flex', - mt: 0, justifyContent: 'center', - alignItems: 'center', - backgroundColor: 'background.dark' + alignItems: 'center' }} > diff --git a/packages/scoutgame-ui/src/components/common/Card/BuilderCard/BuilderCard.tsx b/packages/scoutgame-ui/src/components/common/Card/BuilderCard/BuilderCard.tsx index edac685ce8..7d76ab6906 100644 --- a/packages/scoutgame-ui/src/components/common/Card/BuilderCard/BuilderCard.tsx +++ b/packages/scoutgame-ui/src/components/common/Card/BuilderCard/BuilderCard.tsx @@ -17,7 +17,7 @@ export function BuilderCard({ showHotIcon = false, size = 'medium', disableProfileUrl = false, - disableStarterCardPoints = false + markStarterCardPurchased = false }: { size?: 'x-small' | 'small' | 'medium' | 'large'; builder: Omit, RequiredBuilderInfoFields> & Pick; @@ -25,7 +25,7 @@ export function BuilderCard({ showPurchaseButton?: boolean; showHotIcon?: boolean; disableProfileUrl?: boolean; - disableStarterCardPoints?: boolean; + markStarterCardPurchased?: boolean; }) { return ( {typeof builder.price !== 'undefined' && showPurchaseButton && ( - + )} diff --git a/packages/scoutgame-ui/src/components/common/Carousel/Carousel.tsx b/packages/scoutgame-ui/src/components/common/Carousel/Carousel.tsx index fb85cd6723..065fee6db1 100644 --- a/packages/scoutgame-ui/src/components/common/Carousel/Carousel.tsx +++ b/packages/scoutgame-ui/src/components/common/Carousel/Carousel.tsx @@ -31,6 +31,7 @@ export function Carousel({ renderBullet, boxProps, mobileMinHeight, + autoplay, showMobileNavigationArrows, ...swiperProps }: CarouselProps) { @@ -63,12 +64,12 @@ export function Carousel({ > {children.map((child, index) => ( {child} @@ -104,8 +110,8 @@ export function Carousel({ swiperProps.slidesPerView && children.length > swiperProps.slidesPerView && ( <> - - + + )}
diff --git a/packages/scoutgame-ui/src/components/common/Gallery/BuildersGallery.tsx b/packages/scoutgame-ui/src/components/common/Gallery/BuildersGallery.tsx index 94d984426a..98707f7140 100644 --- a/packages/scoutgame-ui/src/components/common/Gallery/BuildersGallery.tsx +++ b/packages/scoutgame-ui/src/components/common/Gallery/BuildersGallery.tsx @@ -8,13 +8,13 @@ export function BuildersGallery({ columns = 6, showHotIcon = false, size = 'medium', - disableStarterCardPoints = false + markStarterCardPurchased = false }: { builders: BuilderInfo[]; columns?: number; showHotIcon?: boolean; size?: 'small' | 'medium' | 'large'; - disableStarterCardPoints?: boolean; + markStarterCardPurchased?: boolean; }) { return ( @@ -36,7 +36,7 @@ export function BuildersGallery({ showPurchaseButton showHotIcon={showHotIcon} size={size} - disableStarterCardPoints={disableStarterCardPoints} + markStarterCardPurchased={markStarterCardPurchased} /> diff --git a/apps/scoutgame/components/common/BuilderIcon.tsx b/packages/scoutgame-ui/src/components/common/Icons/BuilderIcon.tsx similarity index 100% rename from apps/scoutgame/components/common/BuilderIcon.tsx rename to packages/scoutgame-ui/src/components/common/Icons/BuilderIcon.tsx diff --git a/packages/scoutgame-ui/src/components/common/Icons/FriendsIcon.tsx b/packages/scoutgame-ui/src/components/common/Icons/FriendsIcon.tsx deleted file mode 100644 index 7b7efc9661..0000000000 --- a/packages/scoutgame-ui/src/components/common/Icons/FriendsIcon.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import { SvgIcon } from '@mui/material'; - -export function FriendsIcon({ fill }: { fill: string }) { - return ( - - - - - - - - - - - - - - - - - - ); -} diff --git a/apps/scoutgame/components/common/Icons/QuestsIcon.tsx b/packages/scoutgame-ui/src/components/common/Icons/QuestsIcon.tsx similarity index 100% rename from apps/scoutgame/components/common/Icons/QuestsIcon.tsx rename to packages/scoutgame-ui/src/components/common/Icons/QuestsIcon.tsx diff --git a/apps/scoutgametelegram/components/common/Icons/ScoutIcon.tsx b/packages/scoutgame-ui/src/components/common/Icons/ScoutIcon.tsx similarity index 100% rename from apps/scoutgametelegram/components/common/Icons/ScoutIcon.tsx rename to packages/scoutgame-ui/src/components/common/Icons/ScoutIcon.tsx diff --git a/packages/scoutgame-ui/src/components/common/Loading/LoadingCards.tsx b/packages/scoutgame-ui/src/components/common/Loading/LoadingCards.tsx index 49ccb9c8a5..5e67f34c68 100644 --- a/packages/scoutgame-ui/src/components/common/Loading/LoadingCards.tsx +++ b/packages/scoutgame-ui/src/components/common/Loading/LoadingCards.tsx @@ -4,11 +4,12 @@ import { Skeleton, Stack } from '@mui/material'; import { useMdScreen } from '../../../hooks/useMediaScreens'; -export function LoadingCards() { +export function LoadingCards({ count }: { count?: number }) { const isDesktop = useMdScreen(); + count = count || (isDesktop ? 5 : 2); return ( - {new Array(isDesktop ? 5 : 2).fill('').map(() => ( + {new Array(count).fill('').map(() => (
@@ -154,9 +157,11 @@ export function Header() { - + {platform === 'webapp' && ( + + )} )} diff --git a/apps/scoutgame/components/common/SiteNavigation.tsx b/packages/scoutgame-ui/src/components/common/Navigation/SiteNavigation.tsx similarity index 74% rename from apps/scoutgame/components/common/SiteNavigation.tsx rename to packages/scoutgame-ui/src/components/common/Navigation/SiteNavigation.tsx index a5594c17ff..4dd378f5b5 100644 --- a/apps/scoutgame/components/common/SiteNavigation.tsx +++ b/packages/scoutgame-ui/src/components/common/Navigation/SiteNavigation.tsx @@ -1,28 +1,26 @@ 'use client'; import { BottomNavigation, BottomNavigationAction, styled } from '@mui/material'; +import { getPlatform } from '@packages/mixpanel/utils'; +import { BuilderIcon } from '@packages/scoutgame-ui/components/common/Icons/BuilderIcon'; import { ClaimIcon } from '@packages/scoutgame-ui/components/common/Icons/ClaimIcon'; import { SignInModalMessage } from '@packages/scoutgame-ui/components/common/ScoutButton/SignInModalMessage'; -import { useMdScreen } from '@packages/scoutgame-ui/hooks/useMediaScreens'; +import { useGetClaimablePoints } from '@packages/scoutgame-ui/hooks/api/session'; import { useUser } from '@packages/scoutgame-ui/providers/UserProvider'; import Link from 'next/link'; import { usePathname } from 'next/navigation'; import type { MouseEvent } from 'react'; import { useState } from 'react'; import { ImGift as QuestsIcon } from 'react-icons/im'; -import { PiBinocularsLight } from 'react-icons/pi'; -import { SlUser } from 'react-icons/sl'; - -import { useGetClaimablePoints } from 'hooks/api/session'; - -import { BuilderIcon } from './BuilderIcon'; +import { PiBinocularsLight as ScoutIcon } from 'react-icons/pi'; const StyledBottomNavigation = styled(BottomNavigation, { - shouldForwardProp: (prop) => prop !== 'topNav' -})<{ topNav?: boolean }>(({ theme, topNav }) => ({ + shouldForwardProp: (prop) => prop !== 'topNav' && prop !== 'isTelegram' +})<{ topNav?: boolean; isTelegram?: boolean }>(({ theme, topNav, isTelegram }) => ({ background: topNav ? 'transparent' : 'linear-gradient(88.35deg, #96CDFF 0%, #A06CD5 29.5%, #96CDFF 75.47%, #A06CD5 100%)', + height: isTelegram ? '71px' : undefined, '& > a': { color: topNav ? theme.palette.text.primary : theme.palette.common.black, gap: '2px', @@ -36,6 +34,7 @@ const StyledBottomNavigation = styled(BottomNavigation, { backgroundColor: topNav ? theme.palette.primary.main : 'rgba(44, 0, 90, 0.25)' }, '&.MuiButtonBase-root': { + paddingBottom: isTelegram ? '15px' : undefined, minWidth: '60px' }, '& .MuiBottomNavigationAction-label': { @@ -45,11 +44,11 @@ const StyledBottomNavigation = styled(BottomNavigation, { })); export function SiteNavigation({ topNav }: { topNav?: boolean }) { + const platform = getPlatform(); const pathname = usePathname(); const { user } = useUser(); const isAuthenticated = Boolean(user); const value = getActiveButton(pathname); - const isDesktop = useMdScreen(); const { data: claimablePoints } = useGetClaimablePoints(); const [authPopup, setAuthPopup] = useState({ open: false, @@ -65,12 +64,18 @@ export function SiteNavigation({ topNav }: { topNav?: boolean }) { return ( <> - + } + icon={} LinkComponent={Link} /> 0} />} onClick={(e) => openAuthModal?.(e, 'claim')} /> - {user ? ( - } - onClick={(e) => openAuthModal?.(e, 'profile')} - /> - ) : null}