b141356247
- Add --color-green-mid token (#4a7a55) to @theme for dimmer stat values
- Replace all text-[#hex]/bg-[#hex] arbitrary values with named tokens:
text-green, text-green-light, text-green-sec, text-green-muted,
text-green-dark, text-green-mid, text-text, bg-card, bg-bg, border-border
- Replace rgba(34,197,94,X) inline styles with bg-green/X opacity modifiers
- Convert single-prop style={{ borderColor/background }} to className
- Fix SVG stroke="#dff5e8" → stroke="currentColor"
- Use CSS variables in globals.css base styles (background-color, color)
- Move app/data/wikipedia/ → data/ (project root, not inside Next.js app dir)
- Update Dockerfile, seed.ts, scrape-wikipedia.ts paths accordingly
- Remove unused app/data/world_cup.csv
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
605 lines
11 KiB
JSON
605 lines
11 KiB
JSON
{
|
|
"matches": [
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 1",
|
|
"date": "1930-07-13",
|
|
"time": "15:00",
|
|
"team1": "France",
|
|
"team2": "Mexico",
|
|
"score": {
|
|
"ft": [
|
|
4,
|
|
1
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "L. Laurent",
|
|
"minute": 19
|
|
},
|
|
{
|
|
"name": "Langiller",
|
|
"minute": 40
|
|
},
|
|
{
|
|
"name": "Maschinot",
|
|
"minute": 43
|
|
},
|
|
{
|
|
"name": "Maschinot",
|
|
"minute": 87
|
|
}
|
|
],
|
|
"goals2": [
|
|
{
|
|
"name": "Carreño",
|
|
"minute": 70
|
|
}
|
|
],
|
|
"ground": "Estadio Pocitos, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 1",
|
|
"date": "1930-07-15",
|
|
"time": "16:00",
|
|
"team1": "Argentina",
|
|
"team2": "France",
|
|
"score": {
|
|
"ft": [
|
|
1,
|
|
0
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Monti",
|
|
"minute": 81
|
|
}
|
|
],
|
|
"ground": "Estadio Parque Central, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 1",
|
|
"date": "1930-07-16",
|
|
"time": "14:45",
|
|
"team1": "Chile",
|
|
"team2": "Mexico",
|
|
"score": {
|
|
"ft": [
|
|
3,
|
|
0
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Vidal",
|
|
"minute": 3
|
|
},
|
|
{
|
|
"name": "Vidal",
|
|
"minute": 65
|
|
},
|
|
{
|
|
"name": "M. Rosas",
|
|
"minute": 52,
|
|
"owngoal": true
|
|
}
|
|
],
|
|
"ground": "Estadio Parque Central, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 1",
|
|
"date": "1930-07-19",
|
|
"time": "12:50",
|
|
"team1": "Chile",
|
|
"team2": "France",
|
|
"score": {
|
|
"ft": [
|
|
1,
|
|
0
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Subiabre",
|
|
"minute": 67
|
|
}
|
|
],
|
|
"ground": "Estadio Centenario, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 1",
|
|
"date": "1930-07-19",
|
|
"time": "15:00",
|
|
"team1": "Argentina",
|
|
"team2": "Mexico",
|
|
"score": {
|
|
"ft": [
|
|
6,
|
|
3
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Stábile",
|
|
"minute": 8
|
|
},
|
|
{
|
|
"name": "Stábile",
|
|
"minute": 17
|
|
},
|
|
{
|
|
"name": "Stábile",
|
|
"minute": 80
|
|
},
|
|
{
|
|
"name": "Zumelzú",
|
|
"minute": 12
|
|
},
|
|
{
|
|
"name": "Zumelzú",
|
|
"minute": 55
|
|
},
|
|
{
|
|
"name": "Varallo",
|
|
"minute": 53
|
|
}
|
|
],
|
|
"goals2": [
|
|
{
|
|
"name": "M. Rosas",
|
|
"minute": 42,
|
|
"penalty": true
|
|
},
|
|
{
|
|
"name": "M. Rosas",
|
|
"minute": 65
|
|
},
|
|
{
|
|
"name": "Gayón",
|
|
"minute": 75
|
|
}
|
|
],
|
|
"ground": "Estadio Centenario, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 1",
|
|
"date": "1930-07-22",
|
|
"time": "14:45",
|
|
"team1": "Argentina",
|
|
"team2": "Chile",
|
|
"score": {
|
|
"ft": [
|
|
3,
|
|
1
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Stábile",
|
|
"minute": 12
|
|
},
|
|
{
|
|
"name": "Stábile",
|
|
"minute": 13
|
|
},
|
|
{
|
|
"name": "M. Evaristo",
|
|
"minute": 51
|
|
}
|
|
],
|
|
"goals2": [
|
|
{
|
|
"name": "Subiabre",
|
|
"minute": 15
|
|
}
|
|
],
|
|
"ground": "Estadio Centenario, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 2",
|
|
"date": "1930-07-14",
|
|
"time": "12:45",
|
|
"team1": "Yugoslavia",
|
|
"team2": "Brazil",
|
|
"score": {
|
|
"ft": [
|
|
2,
|
|
1
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Tirnanić",
|
|
"minute": 21
|
|
},
|
|
{
|
|
"name": "Bek",
|
|
"minute": 30
|
|
}
|
|
],
|
|
"goals2": [
|
|
{
|
|
"name": "Preguinho",
|
|
"minute": 62
|
|
}
|
|
],
|
|
"ground": "Estadio Parque Central, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 2",
|
|
"date": "1930-07-17",
|
|
"time": "12:45",
|
|
"team1": "Yugoslavia",
|
|
"team2": "Bolivia",
|
|
"score": {
|
|
"ft": [
|
|
4,
|
|
0
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Bek",
|
|
"minute": 60
|
|
},
|
|
{
|
|
"name": "Bek",
|
|
"minute": 67
|
|
},
|
|
{
|
|
"name": "Marjanović",
|
|
"minute": 65
|
|
},
|
|
{
|
|
"name": "Vujadinović",
|
|
"minute": 85
|
|
}
|
|
],
|
|
"ground": "Estadio Parque Central, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 2",
|
|
"date": "1930-07-20",
|
|
"time": "13:00",
|
|
"team1": "Brazil",
|
|
"team2": "Bolivia",
|
|
"score": {
|
|
"ft": [
|
|
4,
|
|
0
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Moderato",
|
|
"minute": 37
|
|
},
|
|
{
|
|
"name": "Moderato",
|
|
"minute": 73
|
|
},
|
|
{
|
|
"name": "Preguinho",
|
|
"minute": 57
|
|
},
|
|
{
|
|
"name": "Preguinho",
|
|
"minute": 83
|
|
}
|
|
],
|
|
"ground": "Estadio Centenario, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 3",
|
|
"date": "1930-07-14",
|
|
"time": "14:50",
|
|
"team1": "Romania",
|
|
"team2": "Peru",
|
|
"score": {
|
|
"ft": [
|
|
3,
|
|
1
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Deșu",
|
|
"minute": 1
|
|
},
|
|
{
|
|
"name": "Stanciu",
|
|
"minute": 79
|
|
},
|
|
{
|
|
"name": "Kovács",
|
|
"minute": 89
|
|
}
|
|
],
|
|
"goals2": [
|
|
{
|
|
"name": "De Souza",
|
|
"minute": 75
|
|
}
|
|
],
|
|
"ground": "Estadio Pocitos, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 3",
|
|
"date": "1930-07-18",
|
|
"time": "14:30",
|
|
"team1": "Uruguay",
|
|
"team2": "Peru",
|
|
"score": {
|
|
"ft": [
|
|
1,
|
|
0
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Castro",
|
|
"minute": 65
|
|
}
|
|
],
|
|
"ground": "Estadio Centenario, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 3",
|
|
"date": "1930-07-21",
|
|
"time": "14:50",
|
|
"team1": "Uruguay",
|
|
"team2": "Romania",
|
|
"score": {
|
|
"ft": [
|
|
4,
|
|
0
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Dorado",
|
|
"minute": 7
|
|
},
|
|
{
|
|
"name": "Scarone",
|
|
"minute": 26
|
|
},
|
|
{
|
|
"name": "Anselmo",
|
|
"minute": 31
|
|
},
|
|
{
|
|
"name": "Cea",
|
|
"minute": 35
|
|
}
|
|
],
|
|
"ground": "Estadio Centenario, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 4",
|
|
"date": "1930-07-13",
|
|
"time": "15:00",
|
|
"team1": "United States",
|
|
"team2": "Belgium",
|
|
"score": {
|
|
"ft": [
|
|
3,
|
|
0
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "McGhee",
|
|
"minute": 23
|
|
},
|
|
{
|
|
"name": "Florie",
|
|
"minute": 45
|
|
},
|
|
{
|
|
"name": "Patenaude",
|
|
"minute": 69
|
|
}
|
|
],
|
|
"ground": "Estadio Parque Central, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 4",
|
|
"date": "1930-07-17",
|
|
"time": "14:45",
|
|
"team1": "United States",
|
|
"team2": "Paraguay",
|
|
"score": {
|
|
"ft": [
|
|
3,
|
|
0
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Patenaude",
|
|
"minute": 10
|
|
},
|
|
{
|
|
"name": "Patenaude",
|
|
"minute": 15
|
|
},
|
|
{
|
|
"name": "Patenaude",
|
|
"minute": 50
|
|
}
|
|
],
|
|
"ground": "Estadio Parque Central, Montevideo"
|
|
},
|
|
{
|
|
"round": "Group stage",
|
|
"group": "Group 4",
|
|
"date": "1930-07-20",
|
|
"time": "15:00",
|
|
"team1": "Paraguay",
|
|
"team2": "Belgium",
|
|
"score": {
|
|
"ft": [
|
|
1,
|
|
0
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Vargas Peña",
|
|
"minute": 40
|
|
}
|
|
],
|
|
"ground": "Estadio Centenario, Montevideo"
|
|
},
|
|
{
|
|
"round": "Semi-finals",
|
|
"date": "1930-07-26",
|
|
"time": "14:45",
|
|
"team1": "Argentina",
|
|
"team2": "United States",
|
|
"score": {
|
|
"ft": [
|
|
6,
|
|
1
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Monti",
|
|
"minute": 20
|
|
},
|
|
{
|
|
"name": "Scopelli",
|
|
"minute": 56
|
|
},
|
|
{
|
|
"name": "Stábile",
|
|
"minute": 69
|
|
},
|
|
{
|
|
"name": "Stábile",
|
|
"minute": 87
|
|
},
|
|
{
|
|
"name": "Peucelle",
|
|
"minute": 80
|
|
},
|
|
{
|
|
"name": "Peucelle",
|
|
"minute": 85
|
|
}
|
|
],
|
|
"goals2": [
|
|
{
|
|
"name": "Brown",
|
|
"minute": 89
|
|
}
|
|
],
|
|
"ground": "Estadio Centenario, Montevideo"
|
|
},
|
|
{
|
|
"round": "Semi-finals",
|
|
"date": "1930-07-27",
|
|
"time": "14:45",
|
|
"team1": "Uruguay",
|
|
"team2": "Yugoslavia",
|
|
"score": {
|
|
"ft": [
|
|
6,
|
|
1
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Cea",
|
|
"minute": 18
|
|
},
|
|
{
|
|
"name": "Cea",
|
|
"minute": 67
|
|
},
|
|
{
|
|
"name": "Cea",
|
|
"minute": 72
|
|
},
|
|
{
|
|
"name": "Anselmo",
|
|
"minute": 20
|
|
},
|
|
{
|
|
"name": "Anselmo",
|
|
"minute": 31
|
|
},
|
|
{
|
|
"name": "Iriarte",
|
|
"minute": 61
|
|
}
|
|
],
|
|
"goals2": [
|
|
{
|
|
"name": "Vujadinović",
|
|
"minute": 4
|
|
}
|
|
],
|
|
"ground": "Estadio Centenario, Montevideo"
|
|
},
|
|
{
|
|
"round": "Final",
|
|
"date": "1930-07-30",
|
|
"time": "12:45",
|
|
"team1": "Uruguay",
|
|
"team2": "Argentina",
|
|
"score": {
|
|
"ft": [
|
|
4,
|
|
2
|
|
]
|
|
},
|
|
"goals1": [
|
|
{
|
|
"name": "Dorado",
|
|
"minute": 12
|
|
},
|
|
{
|
|
"name": "Cea",
|
|
"minute": 57
|
|
},
|
|
{
|
|
"name": "Iriarte",
|
|
"minute": 68
|
|
},
|
|
{
|
|
"name": "Castro",
|
|
"minute": 89
|
|
}
|
|
],
|
|
"goals2": [
|
|
{
|
|
"name": "Peucelle",
|
|
"minute": 20
|
|
},
|
|
{
|
|
"name": "Stábile",
|
|
"minute": 37
|
|
}
|
|
],
|
|
"ground": "Estadio Centenario, Montevideo"
|
|
}
|
|
]
|
|
} |