diff --git a/.gitignore b/.gitignore index 66f18c5..91b5d86 100644 --- a/.gitignore +++ b/.gitignore @@ -24,6 +24,5 @@ vite.config.ts.timestamp-* # SQLite *.db -scripts/data/* .session local.db diff --git a/scripts/data/brackets.csv b/scripts/data/brackets.csv new file mode 100644 index 0000000..cb34536 --- /dev/null +++ b/scripts/data/brackets.csv @@ -0,0 +1,4 @@ +bracket_name +A +B +C diff --git a/scripts/data/divisions.csv b/scripts/data/divisions.csv new file mode 100644 index 0000000..0dfcebb --- /dev/null +++ b/scripts/data/divisions.csv @@ -0,0 +1,5 @@ +div_name +Year 7 +Year 8 +Year 9 +Year 10 diff --git a/scripts/data/eventTypes.csv b/scripts/data/eventTypes.csv new file mode 100644 index 0000000..c31716d --- /dev/null +++ b/scripts/data/eventTypes.csv @@ -0,0 +1,10 @@ +event_name,preset,resultPreset +100m Sprint,1,race +200m Sprint,1,race +500m Relay,1,race +750m Race,1,race +1000m Long Distance,1,race +Javelin, 2,default +Shotput, 2,default +Long Jump, 2,three +Triple Jump, 2,default diff --git a/scripts/data/players.csv b/scripts/data/players.csv new file mode 100644 index 0000000..b218546 --- /dev/null +++ b/scripts/data/players.csv @@ -0,0 +1,151 @@ +firstName,lastName,team,division +Alex,Mercer,East,Year 7 +Sarah,Connor,West,Year 8 +Miles,Morales,Laud,Year 9 +Bruce,Wayne,School,Year 10 +Clark,Kent,County,Year 10 +Jamie,Fletcher,East,Year 7 +Priya,Sharma,West,Year 7 +Owen,Davies,Laud,Year 7 +Isla,Thompson,School,Year 7 +Noah,Patel,County,Year 7 +Chloe,Griffiths,East,Year 8 +Ethan,Brooks,West,Year 8 +Amara,Osei,Laud,Year 8 +Callum,Reid,School,Year 8 +Zara,Hussain,County,Year 8 +Luca,Martini,East,Year 9 +Hannah,Walters,West,Year 9 +Tobias,Crane,Laud,Year 9 +Fatima,Al-Rashid,School,Year 9 +Reuben,Stone,County,Year 9 +Ava,Mackenzie,East,Year 10 +Dylan,Hargreaves,West,Year 10 +Nadia,Kowalski,Laud,Year 10 +Marcus,Okafor,School,Year 10 +Ellie,Sutton,County,Year 10 +Ben,Whitfield,East,Year 7 +Mia,Nguyen,West,Year 9 +Jude,Barlow,Laud,Year 8 +Sofia,Mendez,School,Year 7 +Aaron,Fitzgerald,County,Year 9 +Leah,Armstrong,East,Year 8 +Theo,Baldwin,West,Year 10 +Aisha,Ibrahim,Laud,Year 7 +Connor,Gallagher,School,Year 9 +Ruby,Thornton,County,Year 8 +Finn,McCabe,East,Year 9 +Yasmin,Khalid,West,Year 7 +Jack,Simmons,Laud,Year 10 +Niamh,O'Brien,School,Year 8 +Leo,Chambers,County,Year 7 +Grace,Henson,East,Year 10 +Ravi,Anand,West,Year 8 +Sienna,Park,Laud,Year 9 +Oliver,Nwosu,School,Year 10 +Tara,Lawson,County,Year 9 +Elliot,Pearce,East,Year 7 +Demi,Adeyemi,West,Year 9 +Samuel,Kerr,Laud,Year 8 +Imogen,Hardy,School,Year 7 +Kai,Johansson,County,Year 10 +Maya,Adebayo,School,Year 10 +Liam,Lindqvist,West,Year 8 +Zoe,Ferrara,West,Year 8 +Freya,Okonkwo,West,Year 7 +Kofi,Castellanos,Laud,Year 10 +Harriet,Mbeki,County,Year 7 +Tariq,Holroyd,County,Year 10 +Pippa,Nazari,West,Year 10 +Declan,Ashworth,County,Year 8 +Ananya,Drummond,Laud,Year 10 +Rhys,Chakraborty,West,Year 8 +Celeste,Malone,School,Year 8 +Jerome,Vasquez,County,Year 9 +Ingrid,Okeke,East,Year 7 +Dante,Sorensen,School,Year 9 +Moira,Kimura,School,Year 7 +Soren,Petrov,Laud,Year 7 +Lydia,Andersen,School,Year 8 +Hector,Voss,Laud,Year 7 +Xanthe,Reyes,School,Year 8 +Caden,Nakamura,County,Year 10 +Petra,Brennan,East,Year 9 +Idris,Svensson,West,Year 8 +Wren,Otieno,West,Year 10 +Bastian,Mirza,County,Year 8 +Orla,Yamamoto,County,Year 8 +Kieran,Diallo,East,Year 7 +Fleur,Henriksen,East,Year 8 +Matteo,Costa,School,Year 10 +Saoirse,Takahashi,East,Year 10 +Felix,Mensah,East,Year 8 +Indira,Eriksson,Laud,Year 7 +Rowan,Chukwu,School,Year 9 +Margot,Brandt,West,Year 10 +Ezra,Magnusson,West,Year 7 +Blythe,Eze,West,Year 10 +Cormac,Halvorsen,Laud,Year 10 +Emeka,Abubakar,West,Year 9 +Zinnia,Lindberg,School,Year 7 +Caspian,Odunbaku,West,Year 8 +Rafferty,Bjornstad,County,Year 10 +Seraphina,Haugen,East,Year 7 +Evander,Solberg,East,Year 8 +Niobe,Dahl,Laud,Year 8 +Alaric,Olawale,West,Year 10 +Cyrus,Skoglund,West,Year 8 +Isolde,Ihejirika,County,Year 9 +Theron,Nzeogwu,School,Year 8 +Briar,Igwe,Laud,Year 7 +Caius,Falola,Laud,Year 8 +Elowen,Bergstrom,East,Year 9 +Stellan,Amaechi,East,Year 7 +Vesper,Thorvaldsen,Laud,Year 8 +Dorian,Obiora,School,Year 10 +Thessaly,Hellstrom,Laud,Year 10 +Oisin,Achebe,School,Year 10 +Calixto,Gustafsson,Laud,Year 7 +Astrid,Emecheta,West,Year 7 +Leandro,Danielsson,Laud,Year 10 +Ottilie,Onyekachi,School,Year 8 +Hamish,Ekstrom,Laud,Year 8 +Xiomara,Azikiwe,Laud,Year 7 +Aarav,Holm,Laud,Year 8 +Nkechi,Nwachukwu,West,Year 10 +Torben,Lund,Laud,Year 10 +Siobhan,Onyeka,East,Year 10 +Emiliano,Sandberg,School,Year 9 +Adaeze,Oduya,East,Year 9 +Callista,Hedlund,Laud,Year 10 +Bram,Afolabi,County,Year 8 +Nneka,Stromberg,Laud,Year 10 +Solange,Ezeoke,Laud,Year 10 +Peregrine,Lundgren,County,Year 8 +Zephyr,Anyanwu,Laud,Year 10 +Liora,Wikstrom,County,Year 10 +Cashel,Okereke,West,Year 10 +Ife,Osborn,Laud,Year 8 +Araminta,Uchenna,Laud,Year 7 +Ptolemy,Strand,Laud,Year 9 +Sunniva,Obi,West,Year 8 +Dagny,Norberg,Laud,Year 10 +Leif,Ekwueme,West,Year 10 +Amara,Akesson,Laud,Year 10 +Caoimhe,Onyia,East,Year 7 +Sefton,Hellgren,County,Year 8 +Oluseun,Alade,East,Year 9 +Ximena,Thorsen,West,Year 10 +Vigdis,Ekene,West,Year 9 +Obinna,Skoog,School,Year 10 +Birgitta,Nwosu,County,Year 9 +Nnamdi,Bergqvist,West,Year 7 +Soleil,Anozie,East,Year 9 +Aderemi,Sjogren,East,Year 7 +Thorsten,Nwofor,East,Year 10 +Chisom,Karlsson,Laud,Year 9 +Viggo,Ezeh,County,Year 9 +Adaora,Sjoberg,West,Year 7 +Bjorn,Oyelaran,School,Year 10 +Uchenna,Friberg,West,Year 9 +Sigrid,Adebayo,School,Year 9 diff --git a/scripts/data/registeredEvents.csv b/scripts/data/registeredEvents.csv new file mode 100644 index 0000000..13915df --- /dev/null +++ b/scripts/data/registeredEvents.csv @@ -0,0 +1,37 @@ +event_type,division,event_state,time_completed +100m Sprint,Year 7,0, +100m Sprint,Year 8,0, +100m Sprint,Year 9,0, +100m Sprint,Year 10,0, +200m Sprint,Year 7,0, +200m Sprint,Year 8,0, +200m Sprint,Year 9,0, +200m Sprint,Year 10,0, +500m Relay,Year 7,0, +500m Relay,Year 8,0, +500m Relay,Year 9,0, +500m Relay,Year 10,0, +750m Race,Year 7,0, +750m Race,Year 8,0, +750m Race,Year 9,0, +750m Race,Year 10,0, +1000m Long Distance,Year 7,0, +1000m Long Distance,Year 8,0, +1000m Long Distance,Year 9,0, +1000m Long Distance,Year 10,0, +Javelin,Year 7,0, +Javelin,Year 8,0, +Javelin,Year 9,0, +Javelin,Year 10,0, +Shotput,Year 7,0, +Shotput,Year 8,0, +Shotput,Year 9,0, +Shotput,Year 10,0, +Long Jump,Year 7,0, +Long Jump,Year 8,0, +Long Jump,Year 9,0, +Long Jump,Year 10,0, +Triple Jump,Year 7,0, +Triple Jump,Year 8,0, +Triple Jump,Year 9,0, +Triple Jump,Year 10,0, diff --git a/scripts/data/registeredPlayers.csv b/scripts/data/registeredPlayers.csv new file mode 100644 index 0000000..577bcf3 --- /dev/null +++ b/scripts/data/registeredPlayers.csv @@ -0,0 +1,541 @@ +player_registered,event_registered,player_placement,bracket +Ava Mackenzie,1000m Long Distance,0,A +Bjorn Oyelaran,1000m Long Distance,0,A +Clark Kent,1000m Long Distance,0,A +Leif Ekwueme,1000m Long Distance,0,A +Zephyr Anyanwu,1000m Long Distance,0,A +Dylan Hargreaves,1000m Long Distance,0,B +Nadia Kowalski,1000m Long Distance,0,B +Obinna Skoog,1000m Long Distance,0,B +Rafferty Bjornstad,1000m Long Distance,0,B +Siobhan Onyeka,1000m Long Distance,0,B +Ellie Sutton,1000m Long Distance,0,C +Jack Simmons,1000m Long Distance,0,C +Matteo Costa,1000m Long Distance,0,C +Thorsten Nwofor,1000m Long Distance,0,C +Wren Otieno,1000m Long Distance,0,C +Harriet Mbeki,1000m Long Distance,0,A +Hector Voss,1000m Long Distance,0,A +Jamie Fletcher,1000m Long Distance,0,A +Sofia Mendez,1000m Long Distance,0,A +Yasmin Khalid,1000m Long Distance,0,A +Caoimhe Onyia,1000m Long Distance,0,B +Freya Okonkwo,1000m Long Distance,0,B +Imogen Hardy,1000m Long Distance,0,B +Leo Chambers,1000m Long Distance,0,B +Xiomara Azikiwe,1000m Long Distance,0,B +Aderemi Sjogren,1000m Long Distance,0,C +Araminta Uchenna,1000m Long Distance,0,C +Ezra Magnusson,1000m Long Distance,0,C +Isla Thompson,1000m Long Distance,0,C +Noah Patel,1000m Long Distance,0,C +Amara Osei,1000m Long Distance,0,A +Ethan Brooks,1000m Long Distance,0,A +Evander Solberg,1000m Long Distance,0,A +Theron Nzeogwu,1000m Long Distance,0,A +Zara Hussain,1000m Long Distance,0,A +Chloe Griffiths,1000m Long Distance,0,B +Lydia Andersen,1000m Long Distance,0,B +Niobe Dahl,1000m Long Distance,0,B +Orla Yamamoto,1000m Long Distance,0,B +Zoe Ferrara,1000m Long Distance,0,B +Fleur Henriksen,1000m Long Distance,0,C +Ife Osborn,1000m Long Distance,0,C +Rhys Chakraborty,1000m Long Distance,0,C +Ruby Thornton,1000m Long Distance,0,C +Xanthe Reyes,1000m Long Distance,0,C +Emeka Abubakar,1000m Long Distance,0,A +Finn McCabe,1000m Long Distance,0,A +Miles Morales,1000m Long Distance,0,A +Rowan Chukwu,1000m Long Distance,0,A +Tara Lawson,1000m Long Distance,0,A +Adaeze Oduya,1000m Long Distance,0,B +Chisom Karlsson,1000m Long Distance,0,B +Demi Adeyemi,1000m Long Distance,0,B +Sigrid Adebayo,1000m Long Distance,0,B +Viggo Ezeh,1000m Long Distance,0,B +Aaron Fitzgerald,1000m Long Distance,0,C +Dante Sorensen,1000m Long Distance,0,C +Mia Nguyen,1000m Long Distance,0,C +Oluseun Alade,1000m Long Distance,0,C +Tobias Crane,1000m Long Distance,0,C +Alaric Olawale,100m Sprint,1,A +Ava Mackenzie,100m Sprint,2,A +Bjorn Oyelaran,100m Sprint,3,A +Jack Simmons,100m Sprint,4,A +Kai Johansson,100m Sprint,5,A +Clark Kent,100m Sprint,0,B +Cormac Halvorsen,100m Sprint,0,B +Marcus Okafor,100m Sprint,0,B +Siobhan Onyeka,100m Sprint,0,B +Ximena Thorsen,100m Sprint,0,B +Bruce Wayne,100m Sprint,0,C +Leandro Danielsson,100m Sprint,0,C +Tariq Holroyd,100m Sprint,0,C +Thorsten Nwofor,100m Sprint,0,C +Wren Otieno,100m Sprint,0,C +Indira Eriksson,100m Sprint,0,A +Jamie Fletcher,100m Sprint,0,A +Noah Patel,100m Sprint,0,A +Priya Sharma,100m Sprint,0,A +Sofia Mendez,100m Sprint,0,A +Adaora Sjoberg,100m Sprint,0,B +Aisha Ibrahim,100m Sprint,0,B +Elliot Pearce,100m Sprint,0,B +Harriet Mbeki,100m Sprint,0,B +Isla Thompson,100m Sprint,0,B +Alex Mercer,100m Sprint,0,C +Imogen Hardy,100m Sprint,0,C +Leo Chambers,100m Sprint,0,C +Owen Davies,100m Sprint,0,C +Yasmin Khalid,100m Sprint,0,C +Amara Osei,100m Sprint,0,A +Bastian Mirza,100m Sprint,0,A +Evander Solberg,100m Sprint,0,A +Sunniva Obi,100m Sprint,0,A +Xanthe Reyes,100m Sprint,0,A +Declan Ashworth,100m Sprint,0,B +Felix Mensah,100m Sprint,0,B +Ife Osborn,100m Sprint,0,B +Liam Lindqvist,100m Sprint,0,B +Theron Nzeogwu,100m Sprint,0,B +Chloe Griffiths,100m Sprint,0,C +Hamish Ekstrom,100m Sprint,0,C +Lydia Andersen,100m Sprint,0,C +Orla Yamamoto,100m Sprint,0,C +Ravi Anand,100m Sprint,0,C +Dante Sorensen,100m Sprint,0,A +Mia Nguyen,100m Sprint,0,A +Petra Brennan,100m Sprint,0,A +Reuben Stone,100m Sprint,0,A +Tobias Crane,100m Sprint,0,A +Jerome Vasquez,100m Sprint,0,B +Luca Martini,100m Sprint,0,B +Miles Morales,100m Sprint,0,B +Rowan Chukwu,100m Sprint,0,B +Vigdis Ekene,100m Sprint,0,B +Emeka Abubakar,100m Sprint,0,C +Sienna Park,100m Sprint,0,C +Sigrid Adebayo,100m Sprint,0,C +Soleil Anozie,100m Sprint,0,C +Viggo Ezeh,100m Sprint,0,C +Caden Nakamura,200m Sprint,0,A +Cashel Okereke,200m Sprint,0,A +Cormac Halvorsen,200m Sprint,0,A +Oisin Achebe,200m Sprint,0,A +Thorsten Nwofor,200m Sprint,0,A +Ananya Drummond,200m Sprint,0,B +Blythe Eze,200m Sprint,0,B +Oliver Nwosu,200m Sprint,0,B +Rafferty Bjornstad,200m Sprint,0,B +Siobhan Onyeka,200m Sprint,0,B +Bjorn Oyelaran,200m Sprint,0,C +Clark Kent,200m Sprint,0,C +Grace Henson,200m Sprint,0,C +Nadia Kowalski,200m Sprint,0,C +Theo Baldwin,200m Sprint,0,C +Ezra Magnusson,200m Sprint,0,A +Harriet Mbeki,200m Sprint,0,A +Indira Eriksson,200m Sprint,0,A +Jamie Fletcher,200m Sprint,0,A +Moira Kimura,200m Sprint,0,A +Calixto Gustafsson,200m Sprint,0,B +Imogen Hardy,200m Sprint,0,B +Noah Patel,200m Sprint,0,B +Seraphina Haugen,200m Sprint,0,B +Yasmin Khalid,200m Sprint,0,B +Briar Igwe,200m Sprint,0,C +Kieran Diallo,200m Sprint,0,C +Leo Chambers,200m Sprint,0,C +Priya Sharma,200m Sprint,0,C +Zinnia Lindberg,200m Sprint,0,C +Evander Solberg,200m Sprint,0,A +Liam Lindqvist,200m Sprint,0,A +Lydia Andersen,200m Sprint,0,A +Peregrine Lundgren,200m Sprint,0,A +Samuel Kerr,200m Sprint,0,A +Caius Falola,200m Sprint,0,B +Declan Ashworth,200m Sprint,0,B +Fleur Henriksen,200m Sprint,0,B +Ottilie Onyekachi,200m Sprint,0,B +Sunniva Obi,200m Sprint,0,B +Bastian Mirza,200m Sprint,0,C +Callum Reid,200m Sprint,0,C +Chloe Griffiths,200m Sprint,0,C +Ife Osborn,200m Sprint,0,C +Zoe Ferrara,200m Sprint,0,C +Connor Gallagher,200m Sprint,0,A +Demi Adeyemi,200m Sprint,0,A +Elowen Bergstrom,200m Sprint,0,A +Isolde Ihejirika,200m Sprint,0,A +Miles Morales,200m Sprint,0,A +Emeka Abubakar,200m Sprint,0,B +Emiliano Sandberg,200m Sprint,0,B +Jerome Vasquez,200m Sprint,0,B +Sienna Park,200m Sprint,0,B +Soleil Anozie,200m Sprint,0,B +Aaron Fitzgerald,200m Sprint,0,C +Adaeze Oduya,200m Sprint,0,C +Dante Sorensen,200m Sprint,0,C +Mia Nguyen,200m Sprint,0,C +Ptolemy Strand,200m Sprint,0,C +Ananya Drummond,500m Relay,0,A +Clark Kent,500m Relay,0,A +Dylan Hargreaves,500m Relay,0,A +Grace Henson,500m Relay,0,A +Marcus Okafor,500m Relay,0,A +Amara Akesson,500m Relay,0,B +Kai Johansson,500m Relay,0,B +Maya Adebayo,500m Relay,0,B +Pippa Nazari,500m Relay,0,B +Thorsten Nwofor,500m Relay,0,B +Caden Nakamura,500m Relay,0,C +Leif Ekwueme,500m Relay,0,C +Nneka Stromberg,500m Relay,0,C +Oliver Nwosu,500m Relay,0,C +Siobhan Onyeka,500m Relay,0,C +Ben Whitfield,500m Relay,0,A +Harriet Mbeki,500m Relay,0,A +Moira Kimura,500m Relay,0,A +Nnamdi Bergqvist,500m Relay,0,A +Soren Petrov,500m Relay,0,A +Ezra Magnusson,500m Relay,0,B +Jamie Fletcher,500m Relay,0,B +Leo Chambers,500m Relay,0,B +Xiomara Azikiwe,500m Relay,0,B +Zinnia Lindberg,500m Relay,0,B +Alex Mercer,500m Relay,0,C +Calixto Gustafsson,500m Relay,0,C +Imogen Hardy,500m Relay,0,C +Noah Patel,500m Relay,0,C +Priya Sharma,500m Relay,0,C +Caius Falola,500m Relay,0,A +Declan Ashworth,500m Relay,0,A +Ethan Brooks,500m Relay,0,A +Fleur Henriksen,500m Relay,0,A +Lydia Andersen,500m Relay,0,A +Evander Solberg,500m Relay,0,B +Sarah Connor,500m Relay,0,B +Sefton Hellgren,500m Relay,0,B +Theron Nzeogwu,500m Relay,0,B +Vesper Thorvaldsen,500m Relay,0,B +Celeste Malone,500m Relay,0,C +Chloe Griffiths,500m Relay,0,C +Ife Osborn,500m Relay,0,C +Liam Lindqvist,500m Relay,0,C +Peregrine Lundgren,500m Relay,0,C +Adaeze Oduya,500m Relay,0,A +Connor Gallagher,500m Relay,0,A +Tara Lawson,500m Relay,0,A +Tobias Crane,500m Relay,0,A +Vigdis Ekene,500m Relay,0,A +Finn McCabe,500m Relay,0,B +Jerome Vasquez,500m Relay,0,B +Miles Morales,500m Relay,0,B +Sigrid Adebayo,500m Relay,0,B +Uchenna Friberg,500m Relay,0,B +Hannah Walters,500m Relay,0,C +Isolde Ihejirika,500m Relay,0,C +Oluseun Alade,500m Relay,0,C +Rowan Chukwu,500m Relay,0,C +Sienna Park,500m Relay,0,C +Ava Mackenzie,750m Race,0,A +Kai Johansson,750m Race,0,A +Oisin Achebe,750m Race,0,A +Solange Ezeoke,750m Race,0,A +Theo Baldwin,750m Race,0,A +Bruce Wayne,750m Race,0,B +Liora Wikstrom,750m Race,0,B +Nkechi Nwachukwu,750m Race,0,B +Thorsten Nwofor,750m Race,0,B +Torben Lund,750m Race,0,B +Matteo Costa,750m Race,0,C +Nadia Kowalski,750m Race,0,C +Pippa Nazari,750m Race,0,C +Siobhan Onyeka,750m Race,0,C +Tariq Holroyd,750m Race,0,C +Adaora Sjoberg,750m Race,0,A +Calixto Gustafsson,750m Race,0,A +Caoimhe Onyia,750m Race,0,A +Harriet Mbeki,750m Race,0,A +Sofia Mendez,750m Race,0,A +Elliot Pearce,750m Race,0,B +Indira Eriksson,750m Race,0,B +Leo Chambers,750m Race,0,B +Nnamdi Bergqvist,750m Race,0,B +Zinnia Lindberg,750m Race,0,B +Aderemi Sjogren,750m Race,0,C +Astrid Emecheta,750m Race,0,C +Hector Voss,750m Race,0,C +Isla Thompson,750m Race,0,C +Noah Patel,750m Race,0,C +Bastian Mirza,750m Race,0,A +Callum Reid,750m Race,0,A +Ethan Brooks,750m Race,0,A +Leah Armstrong,750m Race,0,A +Vesper Thorvaldsen,750m Race,0,A +Fleur Henriksen,750m Race,0,B +Jude Barlow,750m Race,0,B +Ottilie Onyekachi,750m Race,0,B +Peregrine Lundgren,750m Race,0,B +Sarah Connor,750m Race,0,B +Amara Osei,750m Race,0,C +Chloe Griffiths,750m Race,0,C +Declan Ashworth,750m Race,0,C +Niamh O'Brien,750m Race,0,C +Rhys Chakraborty,750m Race,0,C +Birgitta Nwosu,750m Race,0,A +Dante Sorensen,750m Race,0,A +Luca Martini,750m Race,0,A +Tobias Crane,750m Race,0,A +Vigdis Ekene,750m Race,0,A +Adaeze Oduya,750m Race,0,B +Isolde Ihejirika,750m Race,0,B +Mia Nguyen,750m Race,0,B +Sienna Park,750m Race,0,B +Sigrid Adebayo,750m Race,0,B +Aaron Fitzgerald,750m Race,0,C +Demi Adeyemi,750m Race,0,C +Emiliano Sandberg,750m Race,0,C +Oluseun Alade,750m Race,0,C +Ptolemy Strand,750m Race,0,C +Bjorn Oyelaran,Javelin,0,A +Clark Kent,Javelin,0,A +Dagny Norberg,Javelin,0,A +Leif Ekwueme,Javelin,0,A +Saoirse Takahashi,Javelin,0,A +Ellie Sutton,Javelin,0,B +Kofi Castellanos,Javelin,0,B +Matteo Costa,Javelin,0,B +Siobhan Onyeka,Javelin,0,B +Theo Baldwin,Javelin,0,B +Ananya Drummond,Javelin,0,C +Ava Mackenzie,Javelin,0,C +Caden Nakamura,Javelin,0,C +Oliver Nwosu,Javelin,0,C +Ximena Thorsen,Javelin,0,C +Aisha Ibrahim,Javelin,0,A +Ben Whitfield,Javelin,0,A +Leo Chambers,Javelin,0,A +Priya Sharma,Javelin,0,A +Sofia Mendez,Javelin,0,A +Indira Eriksson,Javelin,0,B +Isla Thompson,Javelin,0,B +Jamie Fletcher,Javelin,0,B +Nnamdi Bergqvist,Javelin,0,B +Noah Patel,Javelin,0,B +Adaora Sjoberg,Javelin,0,C +Calixto Gustafsson,Javelin,0,C +Caoimhe Onyia,Javelin,0,C +Harriet Mbeki,Javelin,0,C +Zinnia Lindberg,Javelin,0,C +Fleur Henriksen,Javelin,0,A +Liam Lindqvist,Javelin,0,A +Niamh O'Brien,Javelin,0,A +Orla Yamamoto,Javelin,0,A +Vesper Thorvaldsen,Javelin,0,A +Caius Falola,Javelin,0,B +Declan Ashworth,Javelin,0,B +Evander Solberg,Javelin,0,B +Ravi Anand,Javelin,0,B +Xanthe Reyes,Javelin,0,B +Chloe Griffiths,Javelin,0,C +Niobe Dahl,Javelin,0,C +Ottilie Onyekachi,Javelin,0,C +Peregrine Lundgren,Javelin,0,C +Sarah Connor,Javelin,0,C +Chisom Karlsson,Javelin,0,A +Connor Gallagher,Javelin,0,A +Hannah Walters,Javelin,0,A +Isolde Ihejirika,Javelin,0,A +Luca Martini,Javelin,0,A +Aaron Fitzgerald,Javelin,0,B +Demi Adeyemi,Javelin,0,B +Elowen Bergstrom,Javelin,0,B +Fatima Al-Rashid,Javelin,0,B +Sienna Park,Javelin,0,B +Adaeze Oduya,Javelin,0,C +Miles Morales,Javelin,0,C +Sigrid Adebayo,Javelin,0,C +Vigdis Ekene,Javelin,0,C +Viggo Ezeh,Javelin,0,C +Alaric Olawale,Long Jump,0,A +Ava Mackenzie,Long Jump,0,A +Bjorn Oyelaran,Long Jump,0,A +Liora Wikstrom,Long Jump,0,A +Nadia Kowalski,Long Jump,0,A +Blythe Eze,Long Jump,0,B +Marcus Okafor,Long Jump,0,B +Rafferty Bjornstad,Long Jump,0,B +Saoirse Takahashi,Long Jump,0,B +Torben Lund,Long Jump,0,B +Clark Kent,Long Jump,0,C +Dagny Norberg,Long Jump,0,C +Nkechi Nwachukwu,Long Jump,0,C +Obinna Skoog,Long Jump,0,C +Siobhan Onyeka,Long Jump,0,C +Elliot Pearce,Long Jump,0,A +Freya Okonkwo,Long Jump,0,A +Isla Thompson,Long Jump,0,A +Leo Chambers,Long Jump,0,A +Soren Petrov,Long Jump,0,A +Alex Mercer,Long Jump,0,B +Astrid Emecheta,Long Jump,0,B +Harriet Mbeki,Long Jump,0,B +Imogen Hardy,Long Jump,0,B +Indira Eriksson,Long Jump,0,B +Araminta Uchenna,Long Jump,0,C +Ezra Magnusson,Long Jump,0,C +Noah Patel,Long Jump,0,C +Sofia Mendez,Long Jump,0,C +Stellan Amaechi,Long Jump,0,C +Celeste Malone,Long Jump,0,A +Chloe Griffiths,Long Jump,0,A +Hamish Ekstrom,Long Jump,0,A +Liam Lindqvist,Long Jump,0,A +Orla Yamamoto,Long Jump,0,A +Bram Afolabi,Long Jump,0,B +Leah Armstrong,Long Jump,0,B +Ottilie Onyekachi,Long Jump,0,B +Rhys Chakraborty,Long Jump,0,B +Vesper Thorvaldsen,Long Jump,0,B +Amara Osei,Long Jump,0,C +Callum Reid,Long Jump,0,C +Caspian Odunbaku,Long Jump,0,C +Declan Ashworth,Long Jump,0,C +Felix Mensah,Long Jump,0,C +Fatima Al-Rashid,Long Jump,0,A +Finn McCabe,Long Jump,0,A +Reuben Stone,Long Jump,0,A +Sienna Park,Long Jump,0,A +Vigdis Ekene,Long Jump,0,A +Emeka Abubakar,Long Jump,0,B +Isolde Ihejirika,Long Jump,0,B +Oluseun Alade,Long Jump,0,B +Ptolemy Strand,Long Jump,0,B +Rowan Chukwu,Long Jump,0,B +Dante Sorensen,Long Jump,0,C +Hannah Walters,Long Jump,0,C +Jerome Vasquez,Long Jump,0,C +Soleil Anozie,Long Jump,0,C +Tobias Crane,Long Jump,0,C +Amara Akesson,Shotput,0,A +Caden Nakamura,Shotput,0,A +Cashel Okereke,Shotput,0,A +Oisin Achebe,Shotput,0,A +Saoirse Takahashi,Shotput,0,A +Grace Henson,Shotput,0,B +Kofi Castellanos,Shotput,0,B +Oliver Nwosu,Shotput,0,B +Tariq Holroyd,Shotput,0,B +Wren Otieno,Shotput,0,B +Ava Mackenzie,Shotput,0,C +Dagny Norberg,Shotput,0,C +Maya Adebayo,Shotput,0,C +Pippa Nazari,Shotput,0,C +Rafferty Bjornstad,Shotput,0,C +Aderemi Sjogren,Shotput,0,A +Briar Igwe,Shotput,0,A +Harriet Mbeki,Shotput,0,A +Sofia Mendez,Shotput,0,A +Yasmin Khalid,Shotput,0,A +Araminta Uchenna,Shotput,0,B +Ingrid Okeke,Shotput,0,B +Moira Kimura,Shotput,0,B +Nnamdi Bergqvist,Shotput,0,B +Noah Patel,Shotput,0,B +Astrid Emecheta,Shotput,0,C +Imogen Hardy,Shotput,0,C +Jamie Fletcher,Shotput,0,C +Leo Chambers,Shotput,0,C +Xiomara Azikiwe,Shotput,0,C +Chloe Griffiths,Shotput,0,A +Orla Yamamoto,Shotput,0,A +Rhys Chakraborty,Shotput,0,A +Samuel Kerr,Shotput,0,A +Theron Nzeogwu,Shotput,0,A +Aarav Holm,Shotput,0,B +Cyrus Skoglund,Shotput,0,B +Fleur Henriksen,Shotput,0,B +Xanthe Reyes,Shotput,0,B +Zara Hussain,Shotput,0,B +Ethan Brooks,Shotput,0,C +Hamish Ekstrom,Shotput,0,C +Leah Armstrong,Shotput,0,C +Niamh O'Brien,Shotput,0,C +Peregrine Lundgren,Shotput,0,C +Aaron Fitzgerald,Shotput,0,A +Chisom Karlsson,Shotput,0,A +Demi Adeyemi,Shotput,0,A +Emiliano Sandberg,Shotput,0,A +Luca Martini,Shotput,0,A +Adaeze Oduya,Shotput,0,B +Dante Sorensen,Shotput,0,B +Jerome Vasquez,Shotput,0,B +Mia Nguyen,Shotput,0,B +Miles Morales,Shotput,0,B +Connor Gallagher,Shotput,0,C +Finn McCabe,Shotput,0,C +Reuben Stone,Shotput,0,C +Tobias Crane,Shotput,0,C +Vigdis Ekene,Shotput,0,C +Bruce Wayne,Triple Jump,0,A +Clark Kent,Triple Jump,0,A +Grace Henson,Triple Jump,0,A +Kofi Castellanos,Triple Jump,0,A +Wren Otieno,Triple Jump,0,A +Caden Nakamura,Triple Jump,0,B +Cashel Okereke,Triple Jump,0,B +Oliver Nwosu,Triple Jump,0,B +Saoirse Takahashi,Triple Jump,0,B +Solange Ezeoke,Triple Jump,0,B +Amara Akesson,Triple Jump,0,C +Margot Brandt,Triple Jump,0,C +Obinna Skoog,Triple Jump,0,C +Rafferty Bjornstad,Triple Jump,0,C +Siobhan Onyeka,Triple Jump,0,C +Astrid Emecheta,Triple Jump,0,A +Indira Eriksson,Triple Jump,0,A +Ingrid Okeke,Triple Jump,0,A +Leo Chambers,Triple Jump,0,A +Moira Kimura,Triple Jump,0,A +Adaora Sjoberg,Triple Jump,0,B +Briar Igwe,Triple Jump,0,B +Noah Patel,Triple Jump,0,B +Sofia Mendez,Triple Jump,0,B +Stellan Amaechi,Triple Jump,0,B +Caoimhe Onyia,Triple Jump,0,C +Ezra Magnusson,Triple Jump,0,C +Harriet Mbeki,Triple Jump,0,C +Xiomara Azikiwe,Triple Jump,0,C +Zinnia Lindberg,Triple Jump,0,C +Caius Falola,Triple Jump,0,A +Evander Solberg,Triple Jump,0,A +Lydia Andersen,Triple Jump,0,A +Sunniva Obi,Triple Jump,0,A +Zara Hussain,Triple Jump,0,A +Fleur Henriksen,Triple Jump,0,B +Niobe Dahl,Triple Jump,0,B +Sefton Hellgren,Triple Jump,0,B +Xanthe Reyes,Triple Jump,0,B +Zoe Ferrara,Triple Jump,0,B +Felix Mensah,Triple Jump,0,C +Idris Svensson,Triple Jump,0,C +Orla Yamamoto,Triple Jump,0,C +Theron Nzeogwu,Triple Jump,0,C +Vesper Thorvaldsen,Triple Jump,0,C +Chisom Karlsson,Triple Jump,0,A +Mia Nguyen,Triple Jump,0,A +Oluseun Alade,Triple Jump,0,A +Rowan Chukwu,Triple Jump,0,A +Viggo Ezeh,Triple Jump,0,A +Dante Sorensen,Triple Jump,0,B +Demi Adeyemi,Triple Jump,0,B +Isolde Ihejirika,Triple Jump,0,B +Miles Morales,Triple Jump,0,B +Soleil Anozie,Triple Jump,0,B +Adaeze Oduya,Triple Jump,0,C +Connor Gallagher,Triple Jump,0,C +Tara Lawson,Triple Jump,0,C +Tobias Crane,Triple Jump,0,C +Vigdis Ekene,Triple Jump,0,C diff --git a/scripts/data/resultPresets.csv b/scripts/data/resultPresets.csv new file mode 100644 index 0000000..7d98a72 --- /dev/null +++ b/scripts/data/resultPresets.csv @@ -0,0 +1,4 @@ +presetName,numberOfResults,unit,lowerIsBetter,averageResults +default,1,m,0,0 +three,3,m,0,1 +race,1,s,1,0 diff --git a/scripts/data/scoringPresets.csv b/scripts/data/scoringPresets.csv new file mode 100644 index 0000000..d378867 --- /dev/null +++ b/scripts/data/scoringPresets.csv @@ -0,0 +1,7 @@ +preset,placement,points +1,1,10 +1,2,7 +1,3,5 +2,1,50 +2,2,30 +2,3,10 diff --git a/scripts/data/teams.csv b/scripts/data/teams.csv new file mode 100644 index 0000000..7839a8f --- /dev/null +++ b/scripts/data/teams.csv @@ -0,0 +1,6 @@ +team_name,color +East,pink +West,yellow +Laud,blue +School,green +County,red diff --git a/scripts/seed.ts b/scripts/seed.ts index 1eb1021..542a7ec 100644 --- a/scripts/seed.ts +++ b/scripts/seed.ts @@ -35,9 +35,11 @@ async function seed() { await db.delete(schema.mainLedger); await db.delete(schema.registeredPlayers); await db.delete(schema.registeredEvents); + await db.delete(schema.registeredResults); + await db.delete(schema.resultPresets); await db.delete(schema.eventTypes); await db.delete(schema.scoringPresets); - await db.delete(schema.brackets); // Added cleanup for brackets + await db.delete(schema.brackets); await db.delete(schema.players); await db.delete(schema.divisions); await db.delete(schema.teams); @@ -67,6 +69,21 @@ async function seed() { console.log(` → Bracket: ${row.bracket_name}`); } + // --- 2.75 resultPresets --- + const resultPresetsCSV = readCSV('resultPresets.csv'); + for (const row of resultPresetsCSV) { + await db.insert(schema.resultPresets).values({ + presetName: row.presetName, + numberOfResults: row.numberOfResults, + unit: row.unit, + lowerIsBetter: row.lowerIsBetter, + averageResults: row.averageResults + }); + console.log( + ` → Result Preset ${row.presetName}: ${row.numberOfResults} results, measured in ${row.unit}` + ); + } + // --- 3. Scoring Presets --- const scoringPresetsCSV = readCSV('scoringPresets.csv'); for (const row of scoringPresetsCSV) { @@ -81,12 +98,14 @@ async function seed() { // Maps for dynamic relational lookups const dbTeams = await db.select().from(schema.teams); const dbDivisions = await db.select().from(schema.divisions); + const dbResults = await db.select().from(schema.resultPresets); const dbBrackets = await db.select().from(schema.brackets); // Look up newly seeded brackets const teamMap = new Map(dbTeams.map((t) => [t.name, t.id])); const divisionMap = new Map(dbDivisions.map((d) => [d.name, d.id])); const divisionNameMap = new Map([...divisionMap.entries()].map(([name, id]) => [id, name])); const bracketMap = new Map(dbBrackets.map((b) => [b.name, b.id])); // Map names to IDs + const resultPresetMap = new Map(dbResults.map((b) => [b.presetName, b.id])); // Map names to IDs // --- 4. Players --- const playersCSV = readCSV('players.csv'); @@ -109,11 +128,16 @@ async function seed() { // --- 5. Event Types --- const eventTypesCSV = readCSV('eventTypes.csv'); for (const row of eventTypesCSV) { + const presetId = resultPresetMap.get(row.resultPreset); + if (!presetId) throw new Error(`Team "${row.resultPreset}" not found`); await db.insert(schema.eventTypes).values({ name: row.event_name, - preset: row.preset + preset: row.preset, + resultPreset: presetId }); - console.log(` → Event Type: ${row.event_name} (preset ${row.preset})`); + console.log( + ` → Event Type: ${row.event_name} (preset ${row.preset}, resultPreset: ${row.resultPreset})` + ); } const dbEventTypes = await db.select().from(schema.eventTypes); @@ -180,7 +204,7 @@ async function seed() { await client.execute('PRAGMA foreign_keys = ON'); console.log('\n✅ Seeding complete!'); - await client.close(); + client.close(); } seed().catch((err) => { diff --git a/src/lib/server/db/schema.ts b/src/lib/server/db/schema.ts index ac52d5b..f7c7892 100644 --- a/src/lib/server/db/schema.ts +++ b/src/lib/server/db/schema.ts @@ -34,11 +34,23 @@ export const scoringPresets = sqliteTable('scoringPresets', { points: integer('points').notNull().default(0) }); +export const resultPresets = sqliteTable('resultPresets', { + id: integer('resultPresets_id').primaryKey({ autoIncrement: true }), + presetName: text('preset_name').notNull(), + numberOfResults: integer('result_amount').notNull().default(1), + unit: text('result_unit').notNull().default('m'), + lowerIsBetter: integer('is_lower_result_better').notNull().default(0), + averageResults: integer('should_results_average').notNull().default(1) +}); + export const eventTypes = sqliteTable('eventTypes', { id: integer('eventTypes_id').primaryKey({ autoIncrement: true }), name: text('event_name').notNull(), preset: integer('preset') .references(() => scoringPresets.presetID) + .notNull(), + resultPreset: integer('result_preset') + .references(() => resultPresets.id) .notNull() }); @@ -68,6 +80,15 @@ export const registeredPlayers = sqliteTable('registeredPlayers', { placement: integer('player_placement').notNull().default(0) }); +export const registeredResults = sqliteTable('registeredResults', { + id: integer('results_id').primaryKey({ autoIncrement: true }), + registeredPlayerId: integer('player_result_attribution') + .references(() => registeredPlayers.id) + .notNull(), + resultIndex: integer('result_number').notNull().default(1), + result: integer('result_result').notNull().default(0) +}); + export const mainLedger = sqliteTable('mainLedger', { id: integer('mainLedger_id').primaryKey({ autoIncrement: true }), timestamp: integer('ledger_timestamp', { mode: 'timestamp' })