diff --git a/apps/www/components/LaunchWeek/13/InteractiveGridParty.tsx b/apps/www/components/LaunchWeek/13/Multiplayer/CanvasPartyMode.tsx
similarity index 98%
rename from apps/www/components/LaunchWeek/13/InteractiveGridParty.tsx
rename to apps/www/components/LaunchWeek/13/Multiplayer/CanvasPartyMode.tsx
index 98f934ab1ed..d22c5437713 100644
--- a/apps/www/components/LaunchWeek/13/InteractiveGridParty.tsx
+++ b/apps/www/components/LaunchWeek/13/Multiplayer/CanvasPartyMode.tsx
@@ -10,10 +10,10 @@ import {
import useConfData from '~/components/LaunchWeek/hooks/use-conf-data'
import { v4 as uuidv4 } from 'uuid'
import { useTheme } from 'next-themes'
-import { getColor } from './Multiplayer/randomColor'
-import { Coordinates, Payload, User } from './Multiplayer/types'
+import { getColor } from './randomColor'
+import { Coordinates, Payload, User } from './types'
import { cloneDeep, throttle } from 'lodash'
-import Cursor from './Multiplayer/Cursor'
+import Cursor from './Cursor'
/**
* [x] multiplayer cursors
diff --git a/apps/www/components/LaunchWeek/13/InteractiveGridSingle.tsx b/apps/www/components/LaunchWeek/13/Multiplayer/CanvasSingleMode.tsx
similarity index 96%
rename from apps/www/components/LaunchWeek/13/InteractiveGridSingle.tsx
rename to apps/www/components/LaunchWeek/13/Multiplayer/CanvasSingleMode.tsx
index 59c000ad170..11e06594e80 100644
--- a/apps/www/components/LaunchWeek/13/InteractiveGridSingle.tsx
+++ b/apps/www/components/LaunchWeek/13/Multiplayer/CanvasSingleMode.tsx
@@ -4,10 +4,10 @@ import { useEffect, useRef, useState, useCallback } from 'react'
import useConfData from '~/components/LaunchWeek/hooks/use-conf-data'
import { v4 as uuidv4 } from 'uuid'
import { useTheme } from 'next-themes'
-import { INTERACTIVE_GRID_COLORS } from './InteractiveGridParty'
-import Cursor from './Multiplayer/Cursor'
-import { getColor } from './Multiplayer/randomColor'
-import { Coordinates } from './Multiplayer/types'
+import { INTERACTIVE_GRID_COLORS } from './CanvasPartyMode'
+import Cursor from './Cursor'
+import { getColor } from './randomColor'
+import { Coordinates } from './types'
const GRID_SIZE = 100
const CELL_SIZE = 40
diff --git a/apps/www/components/LaunchWeek/13/Ticket/TicketingFlow.tsx b/apps/www/components/LaunchWeek/13/Ticket/TicketingFlow.tsx
index 1be336a61dd..8ecb1f1b364 100644
--- a/apps/www/components/LaunchWeek/13/Ticket/TicketingFlow.tsx
+++ b/apps/www/components/LaunchWeek/13/Ticket/TicketingFlow.tsx
@@ -5,8 +5,8 @@ import { DEFAULT_TRANSITION, INITIAL_BOTTOM, getAnimation } from '~/lib/animatio
import { LW13_DATE, LW13_LAUNCH_DATE } from '~/lib/constants'
import CountdownComponent from '~/components/LaunchWeek/13/Countdown'
-import InteractiveGridParty from '~/components/LaunchWeek/13/InteractiveGridParty'
-import InteractiveGridSingle from '~/components/LaunchWeek/13/InteractiveGridSingle'
+import CanvasPartyMode from '~/components/LaunchWeek/13/Multiplayer/CanvasPartyMode'
+import CanvasSingleMode from '~/components/LaunchWeek/13/Multiplayer/CanvasSingleMode'
import MetalTicket from '~/components/LaunchWeek/13/MetalTicket'
import SectionContainer from '~/components/Layouts/SectionContainer'
import useConfData from '~/components/LaunchWeek/hooks/use-conf-data'
@@ -171,7 +171,7 @@ const TicketingFlow = () => {
- {isPartyMode ? : }
+ {isPartyMode ? : }
{hasTicket && (
(null)
- const [showCustomizationForm, setShowCustomizationForm] = useState(false)
-
- const defaultUserData = {
- id: query.id?.toString(),
- ticket_number: ticketNumber ? parseInt(ticketNumber, 10) : undefined,
- name: query.name?.toString(),
- username: query.username?.toString(),
- platinum: !!query.platinum,
- }
-
- const [userData, setUserData] = useState(defaultUserData)
- const [ticketState, setTicketState] = useState('loading')
-
- useEffect(() => {
- if (supabase) {
- supabase.auth.getSession().then(({ data: { session } }) => setSession(session))
- const {
- data: { subscription },
- } = supabase.auth.onAuthStateChange((_event, session) => {
- setSession(session)
- })
-
- return () => subscription.unsubscribe()
- }
- }, [supabase])
-
- useEffect(() => {
- if (session?.user) {
- if (userData?.id) {
- return setTicketState('ticket')
- }
- return setTicketState('loading')
- }
- if (!session) return setTicketState('registration')
- }, [session, userData])
-
- return (
- <>
-
-
-
-
-
-
- >
- )
-}
diff --git a/apps/www/pages/launch-week/poc-metal-ticket.tsx b/apps/www/pages/launch-week/poc-metal-ticket.tsx
deleted file mode 100644
index 0b91533604b..00000000000
--- a/apps/www/pages/launch-week/poc-metal-ticket.tsx
+++ /dev/null
@@ -1,91 +0,0 @@
-import { useState, useEffect } from 'react'
-import { useRouter } from 'next/router'
-import { NextSeo } from 'next-seo'
-import { Session } from '@supabase/supabase-js'
-import { LW12_DATE, LW12_TITLE, LW_URL, SITE_ORIGIN } from '~/lib/constants'
-import supabase from '~/lib/supabase'
-
-import DefaultLayout from '~/components/Layouts/Default'
-import { TicketState, ConfDataContext, UserData } from '~/components/LaunchWeek/hooks/use-conf-data'
-import MetalTicket from '~/components/LaunchWeek/13/MetalTicket'
-
-export default function LaunchWeekIndex() {
- const { query } = useRouter()
-
- const TITLE = `${LW12_TITLE} | ${LW12_DATE}`
- const DESCRIPTION = 'Join us for a week of announcing new features, every day at 7 AM PT.'
- const OG_IMAGE = `${SITE_ORIGIN}/images/launchweek/12/lw12-og.png?lw=12`
-
- const ticketNumber = query.ticketNumber?.toString()
- const [session, setSession] = useState(null)
- const [showCustomizationForm, setShowCustomizationForm] = useState(false)
-
- const defaultUserData = {
- id: query.id?.toString(),
- ticket_number: ticketNumber ? parseInt(ticketNumber, 10) : undefined,
- name: query.name?.toString(),
- username: query.username?.toString(),
- platinum: !!query.platinum,
- }
-
- const [userData, setUserData] = useState(defaultUserData)
- const [ticketState, setTicketState] = useState('loading')
-
- useEffect(() => {
- if (supabase) {
- supabase.auth.getSession().then(({ data: { session } }) => setSession(session))
- const {
- data: { subscription },
- } = supabase.auth.onAuthStateChange((_event, session) => {
- setSession(session)
- })
-
- return () => subscription.unsubscribe()
- }
- }, [supabase])
-
- useEffect(() => {
- if (session?.user) {
- if (userData?.id) {
- return setTicketState('ticket')
- }
- return setTicketState('loading')
- }
- if (!session) return setTicketState('registration')
- }, [session, userData])
-
- return (
- <>
-
-
-
-
-
-
- >
- )
-}