@@ -26,84 +26,79 @@ useHead({ title: `Vue Fes Japan ${year}` });
2626 class =" border-b border-[var(--rule)] pt-[clamp(32px,5vw,72px)] pb-[clamp(24px,4vw,48px)] px-[var(--pad-x)]"
2727 >
2828 <h1
29- class =" [font-family:var(--font-display)] text-[clamp(28px,4.5vw,72px)] font-bold tracking-[-0.04em ] leading-[1] mb-[16px]"
29+ class =" [font-family:var(--font-display)] text-[clamp(28px,4.5vw,72px)] font-[500 ] leading-[1] mb-[16px]"
3030 >
3131 Vue Fes Japan <span v-if =" year === '2022'" >Online </span
3232 ><em class =" not-italic text-[var(--accent)]" >{{ year }}</em >
3333 </h1 >
34- <div class =" [font-family:var(--font-mono)] text-[12px] text-[ var(--ink-2 )]" >
34+ <div class =" [font-family:var(--font-mono)] text-[var(--ink-3 )]" >
3535 <div >{{ t.year_total_talks(filterYearSpeaker?.length ?? 0) }}</div >
36- <div class =" mt-[8px]" >
36+ <div class =" mt-[8px] text-[12px] " >
3737 <a
3838 :href =" `https://vuefes.jp/${year}/`"
3939 target =" _blank"
4040 rel =" noopener noreferrer"
41- class =" text-[var(--ink)] no-underline flex items-baseline gap-[4px]"
41+ class =" text-[var(--ink-2 )] no-underline group flex items-baseline gap-[4px]"
4242 >
43- <span class =" hover:underline" >{{ t.official_site }}</span
44- ><span > {{ t.external }}</span >
43+ <span class =" group- hover:underline" >{{ t.official_site }}</span
44+ ><span class = " text-[10px] " >( {{ t.external }}) </span >
4545 </a >
4646 </div >
4747 </div >
4848 </header >
4949
50- <section class =" px-[var(--pad-x)] py-[40px]" >
50+ <section class =" px-[var(--pad-x)] py-[40px] border-b border-[var(--rule-softer)]" >
51+ <h2 class =" [font-family:var(--font-mono)] tracking-[0.1em] text-[var(--ink-3)] mb-[16px]" >
52+ {{ t.all_speakers }}
53+ </h2 >
5154 <ol class =" list-none p-0 m-0" >
52- <li class =" border-b border-[var(--rule)]" >
53- <ul class =" list-none p-0 m-0" >
54- <li
55- v-for =" (s, i) in filterYearSpeaker"
56- :key =" i"
57- class =" grid grid-cols-[40px_1fr] border-t border-[var(--rule-softer)] py-[18px]"
58- >
59- <div
60- class =" [font-family:var(--font-mono)] text-[12px] text-[var(--ink-2)] pt-[5px] text-center"
61- aria-hidden =" true"
62- >
63- <span >{{ String(i + 1).padStart(2, '0') }}</span >
64- </div >
65- <div class =" pr-[24px]" >
66- <div class =" flex flex-wrap gap-x-[8px] gap-y-[4px] mb-[6px] items-center" >
67- <template v-for =" (n , ni ) in s .name " :key =" n " >
68- <span
69- v-if =" ni > 0"
70- class =" text-[var(--ink-2)] text-[12px]"
71- aria-hidden =" true"
72- >
73- ×
74- </span >
75- <NuxtLink
76- class="text-[18px] [font-family:var (--font-mono)] border-b border-[var(--rule-soft)] pb-[1px] no-underline transition-colors hover:border- [var(--accent)] hover:text- [var(--accent)]"
77- :to =" ` /speakers/${encodeURIComponent (n )} ` "
78- >
79- <ruby v-if =" s.nameRuby?.[ni] && lang === 'ja'" lang =" ja"
80- >{{ n }}<rt >{{ s.nameRuby[ni] }}</rt ></ruby
81- >
82- <span v-else >{{ lang === 'en' && s.nameEn?.[ni] ? s.nameEn[ni] : n }}</span >
83- </NuxtLink >
84- </template >
85- </div >
86- <div class =" text-[14px] text-[var(--ink-2)]" >
87- <a
88- v-if =" s.title"
89- :href =" s.url"
90- target =" _blank"
91- rel =" noopener noreferrer"
92- class =" no-underline"
55+ <li
56+ v-for =" (s, i) in filterYearSpeaker"
57+ :key =" i"
58+ class =" grid grid-cols-[40px_1fr] border-t border-[var(--rule-softer)] py-[18px]"
59+ >
60+ <div
61+ class =" [font-family:var(--font-mono)] text-[12px] text-[var(--ink-2)] pt-[5px] text-center"
62+ aria-hidden =" true"
63+ >
64+ <span >{{ String(i + 1).padStart(2, '0') }}</span >
65+ </div >
66+ <div class =" pr-[24px]" >
67+ <div class =" flex flex-wrap gap-x-[8px] gap-y-[4px] mb-[6px] items-center" >
68+ <template v-for =" (n , ni ) in s .name " :key =" n " >
69+ <span v-if =" ni > 0" class =" text-[var(--ink-2)] text-[12px]" aria-hidden =" true" >
70+ ×
71+ </span >
72+ <NuxtLink
73+ class="text-[18px] [font-family:var (--font-mono)] border-b border-[var(--rule-soft)] pb-[1px] no-underline transition-colors hover:border- [var(--accent)] hover:text- [var(--accent)]"
74+ :to =" ` /speakers/${encodeURIComponent (n )} ` "
75+ >
76+ <ruby v-if =" s.nameRuby?.[ni] && lang === 'ja'" lang =" ja"
77+ >{{ n }}<rt >{{ s.nameRuby[ni] }}</rt ></ruby
9378 >
94- <span
95- v-if =" s.format === 'panel'"
96- class =" relative top-[-1px] inline-flex items-center self-center align-middle [font-family:var(--font-mono)] text-[10px] uppercase tracking-[0.06em] border border-[var(--ink)] text-[var(--ink)] px-[5px] py-[1px] leading-[1.15] mr-[8px]"
97- >{{ t.session_format_panel }}</span
98- >
99- <span >{{ s.title }}</span >
100- <span class =" text-[10px] ml-[4px]" >({{ t.external }})</span >
101- </a >
102- <span v-else class =" italic text-[var(--ink-2)] no-underline" >{{ t.tbd }}</span >
103- </div >
104- </div >
105- </li >
106- </ul >
79+ <span v-else >{{ lang === 'en' && s.nameEn?.[ni] ? s.nameEn[ni] : n }}</span >
80+ </NuxtLink >
81+ </template >
82+ </div >
83+ <div class =" text-[14px] text-[var(--ink-2)]" >
84+ <a
85+ v-if =" s.title"
86+ :href =" s.url"
87+ target =" _blank"
88+ rel =" noopener noreferrer"
89+ class =" no-underline group"
90+ >
91+ <span
92+ v-if =" s.format === 'panel'"
93+ class =" relative top-[-1px] inline-flex items-center self-center align-middle [font-family:var(--font-mono)] text-[10px] uppercase tracking-[0.06em] border border-[var(--ink)] text-[var(--ink)] px-[5px] py-[1px] leading-[1.15] mr-[8px]"
94+ >{{ t.session_format_panel }}</span
95+ >
96+ <span class =" group-hover:underline" >{{ s.title }}</span >
97+ <span class =" text-[10px] ml-[4px]" >({{ t.external }})</span >
98+ </a >
99+ <span v-else class =" italic text-[var(--ink-2)] no-underline" >{{ t.tbd }}</span >
100+ </div >
101+ </div >
107102 </li >
108103 </ol >
109104 </section >
0 commit comments