Jimin Huang commited on
Commit
b1722bb
·
1 Parent(s): a5f76ef

Change settings

Browse files
src/components/Header.vue CHANGED
@@ -117,4 +117,4 @@ export default {
117
  height: 17px;
118
  }
119
  }
120
- </style>
 
117
  height: 17px;
118
  }
119
  }
120
+ </style>
src/components/HeaderOpen.vue ADDED
@@ -0,0 +1,204 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <template>
2
+ <header class="arena-header">
3
+ <div class="top-row">
4
+ <div class="logos-group">
5
+ <img
6
+ v-for="(logo, i) in hostingLogos"
7
+ :key="'host-' + i"
8
+ :src="logo.src"
9
+ :alt="logo.name"
10
+ class="logo-image"
11
+ @click="navigateTo('/')"
12
+ />
13
+ </div>
14
+ <h1 class="arena-title">Agent Market Arena</h1>
15
+ </div>
16
+
17
+ <nav class="menu-section">
18
+ <span class="menu-item" @click="navigateTo('/live')">Live Arena</span>
19
+ <span class="menu-item" @click="navigateTo('/leaderboard')">Leaderboard</span>
20
+ <span class="menu-item" @click="navigateTo('/add-asset')">Agent Arena</span>
21
+ </nav>
22
+
23
+ <section class="partners">
24
+ <div class="partners-row">
25
+ <strong class="section-label">Hosting</strong>
26
+ <div class="logos-row">
27
+ <img
28
+ v-for="(logo, i) in hostingLogos"
29
+ :key="'hosting-' + i"
30
+ :src="logo.src"
31
+ :alt="logo.name"
32
+ class="partner-logo"
33
+ />
34
+ </div>
35
+ </div>
36
+
37
+ <div class="partners-row">
38
+ <strong class="section-label">Supporting</strong>
39
+ <div class="logos-row">
40
+ <img
41
+ v-for="(logo, i) in supportingLogos"
42
+ :key="'supporting-' + i"
43
+ :src="logo.src"
44
+ :alt="logo.name"
45
+ class="partner-logo"
46
+ />
47
+ </div>
48
+ </div>
49
+ </section>
50
+ </header>
51
+ </template>
52
+
53
+ <script>
54
+ export default {
55
+ data() {
56
+ return {
57
+ hostingLogos: [
58
+ { name: 'DeepKin', src: '../assets/images/companies_images/deepkin_logo.png' },
59
+ { name: 'The Fin AI', src: '../assets/images/companies_images/logofinai.png' },
60
+ { name: 'NaCTeM', src: '../assets/images/companies_images/nactemlogo.png' },
61
+ { name: 'PAAL AI', src: '../assets/images/companies_images/paalai_logo.png' }
62
+ ],
63
+ supportingLogos: [
64
+ { name: 'Georgia Tech', src: '../assets/images/companies_images/gt_logo.png' },
65
+ { name: 'Columbia University', src: '../assets/images/companies_images/columbia_logo.png' },
66
+ { name: 'Stevens Institute of Technology', src: '../assets/images/companies_images/stevens_logo.png' },
67
+ { name: 'University of Florida', src: '../assets/images/companies_images/uf_logo.png' },
68
+ { name: 'Université de Montréal', src: '../assets/images/companies_images/udem_logo.png' },
69
+ { name: 'Harvard University', src: '../assets/images/companies_images/harvard_logo.png' }
70
+ ]
71
+ };
72
+ },
73
+ methods: {
74
+ navigateTo(path) {
75
+ this.$router.push(path);
76
+ }
77
+ }
78
+ };
79
+ </script>
80
+
81
+ <style scoped>
82
+ .arena-header {
83
+ display: flex;
84
+ flex-direction: column;
85
+ align-items: center;
86
+ gap: 1.2rem;
87
+ padding: 1.5rem 1rem 2rem;
88
+ background: linear-gradient(135deg, #f8f9fb 0%, #ffffff 100%);
89
+ border-bottom: 3px solid #e5e7eb;
90
+ text-align: center;
91
+ }
92
+
93
+ .top-row {
94
+ display: flex;
95
+ flex-direction: column;
96
+ align-items: center;
97
+ gap: 0.75rem;
98
+ }
99
+
100
+ .logos-group {
101
+ display: flex;
102
+ flex-wrap: wrap;
103
+ gap: 0.75rem;
104
+ justify-content: center;
105
+ }
106
+
107
+ .logo-image {
108
+ height: 42px;
109
+ width: auto;
110
+ object-fit: contain;
111
+ transition: transform 0.25s ease;
112
+ cursor: pointer;
113
+ }
114
+ .logo-image:hover {
115
+ transform: translateY(-3px) scale(1.05);
116
+ }
117
+
118
+ .arena-title {
119
+ font-size: 2rem;
120
+ font-weight: 800;
121
+ color: #1f1f33;
122
+ }
123
+
124
+ .menu-section {
125
+ display: flex;
126
+ gap: 2rem;
127
+ flex-wrap: wrap;
128
+ justify-content: center;
129
+ margin-top: 0.5rem;
130
+ }
131
+ .menu-item {
132
+ cursor: pointer;
133
+ font-size: 1.1rem;
134
+ font-weight: 600;
135
+ color: #374151;
136
+ position: relative;
137
+ padding-bottom: 4px;
138
+ transition: color 0.25s ease;
139
+ }
140
+ .menu-item:hover {
141
+ color: #0070f3;
142
+ }
143
+ .menu-item::after {
144
+ content: '';
145
+ position: absolute;
146
+ bottom: 0;
147
+ left: 0;
148
+ width: 0%;
149
+ height: 2px;
150
+ background-color: #0070f3;
151
+ transition: width 0.3s ease;
152
+ }
153
+ .menu-item:hover::after {
154
+ width: 100%;
155
+ }
156
+
157
+ .partners {
158
+ display: flex;
159
+ flex-direction: column;
160
+ gap: 1rem;
161
+ align-items: center;
162
+ margin-top: 1rem;
163
+ }
164
+ .partners-row {
165
+ display: flex;
166
+ flex-direction: column;
167
+ align-items: center;
168
+ gap: 0.5rem;
169
+ }
170
+ .section-label {
171
+ font-weight: 700;
172
+ color: #1f1f33;
173
+ font-size: 1rem;
174
+ }
175
+ .logos-row {
176
+ display: flex;
177
+ flex-wrap: wrap;
178
+ gap: 1rem;
179
+ justify-content: center;
180
+ }
181
+ .partner-logo {
182
+ height: 34px;
183
+ width: auto;
184
+ object-fit: contain;
185
+ filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.2));
186
+ transition: transform 0.25s ease;
187
+ }
188
+ .partner-logo:hover {
189
+ transform: scale(1.05);
190
+ }
191
+
192
+ @media (max-width: 768px) {
193
+ .arena-title {
194
+ font-size: 1.6rem;
195
+ }
196
+ .logo-image,
197
+ .partner-logo {
198
+ height: 28px;
199
+ }
200
+ .menu-section {
201
+ gap: 1rem;
202
+ }
203
+ }
204
+ </style>
src/pages/Main.vue CHANGED
@@ -7,7 +7,7 @@
7
  </template>
8
 
9
  <script>
10
- import Header from '../components/Header.vue'
11
  import Footer from '../components/Footer.vue'
12
  export default {
13
  name: 'Main',
 
7
  </template>
8
 
9
  <script>
10
+ import Header from '../components/HeaderOpen.vue'
11
  import Footer from '../components/Footer.vue'
12
  export default {
13
  name: 'Main',
src/router/index.js CHANGED
@@ -11,7 +11,7 @@ const routes = [
11
  path: '/',
12
  name: 'main',
13
  component: Main,
14
- redirect: '/leadboard',
15
  children: [
16
  { path: '/leadboard', name: 'leadboard', component: LeadboardView },
17
  { path: '/live', name: 'live', component: LiveView },
 
11
  path: '/',
12
  name: 'main',
13
  component: Main,
14
+ redirect: '/live',
15
  children: [
16
  { path: '/leadboard', name: 'leadboard', component: LeadboardView },
17
  { path: '/live', name: 'live', component: LiveView },