@@ -38,10 +38,30 @@ const sections = [
3838]
3939
4040const editions = [
41- { n: 1 , year: ' 2001' , desc: ' First publication' },
42- { n: 2 , year: ' 2006' , desc: ' Expanded scope' },
43- { n: 3 , year: ' 2014' , desc: ' Major revision' },
44- { n: 4 , year: ' 2021' , desc: ' Current edition' },
41+ {
42+ n: 1 , year: ' 2004' , status: ' Withdrawn' ,
43+ iso: ' ISO 10303-210:2004' ,
44+ desc: ' Established the foundational information model for PCA design data exchange.' ,
45+ features: [' Product structure & classification' , ' Physical design representation' , ' Basic connectivity' , ' Component library definitions' ],
46+ },
47+ {
48+ n: 2 , year: ' 2011' , status: ' Withdrawn' ,
49+ iso: ' ISO 10303-210:2011' ,
50+ desc: ' Expanded scope for advanced packaging and interconnect modeling.' ,
51+ features: [' Advanced packaging (BGA, CSP)' , ' Layer stacks & via structures' , ' Thermal & electrical properties' , ' Design-to-usage view mapping' ],
52+ },
53+ {
54+ n: 3 , year: ' 2016' , status: ' Withdrawn' ,
55+ iso: ' ISO 10303-210:2016' ,
56+ desc: ' Major revision introducing design rules, constraints, and functional decomposition.' ,
57+ features: [' Design rules & constraints' , ' Layer stack with stratum technology' , ' Physical requirements capture' , ' Interfacial connectivity' ],
58+ },
59+ {
60+ n: 4 , year: ' 2021' , status: ' Current' ,
61+ iso: ' ISO 10303-210:2021' ,
62+ desc: ' The current edition — comprehensive coverage of electronic design data exchange.' ,
63+ features: [' Full modular architecture' , ' Design-through-manufacturing exchange' , ' Material properties' , ' Complex multi-layer PCA support' ],
64+ },
4565]
4666
4767const heroCode = ` SCHEMA AP210_Electronic_Assembly;
@@ -153,7 +173,7 @@ END_SCHEMA;`
153173
154174 <!-- Standards editions -->
155175 <section class =" py-20 bg-gray-50 dark:bg-navy-light/30" >
156- <div class =" max-w-5xl mx-auto px-4 sm:px-6 lg:px-8" >
176+ <div class =" max-w-6xl mx-auto px-4 sm:px-6 lg:px-8" >
157177 <AnimatedSection >
158178 <div class =" text-center mb-14" >
159179 <p class =" font-mono text-xs tracking-[0.2em] uppercase text-elf-blue dark:text-elf-blue mb-3" >Evolution</p >
@@ -164,23 +184,25 @@ END_SCHEMA;`
164184 </div >
165185 </AnimatedSection >
166186
167- <div class =" relative" >
168- <div class =" absolute left-4 sm:left-8 top-0 bottom-0 w-px bg-gradient-to-b from-elf-blue/30 via-elf-blue/10 to-transparent dark:from-elf-blue/30 dark:via-elf-blue/10" />
169- <div class =" space-y-8" >
170- <AnimatedSection v-for =" (ed, i) in editions" :key =" ed.n" :style =" { transitionDelay: `${i * 80}ms` }" >
171- <RouterLink :to =" `/standard/ed${ed.n}`" class =" relative flex items-start gap-6 sm:gap-8 group" >
172- <div class =" relative z-10 shrink-0" >
173- <div class =" w-8 sm:w-16 h-8 sm:h-16 rounded-full bg-white dark:bg-navy-light border-2 border-elf-blue/30 dark:border-elf-blue/30 flex items-center justify-center group-hover:border-elf-blue dark:group-hover:border-elf-blue transition-colors" >
174- <span class =" font-mono text-xs sm:text-sm font-bold text-elf-blue dark:text-elf-blue" >{{ ed.year }}</span >
175- </div >
176- </div >
177- <div class =" pt-1 sm:pt-4" >
178- <p class =" font-serif font-bold text-gray-900 dark:text-white group-hover:text-elf-blue transition-colors" >Edition {{ ed.n }}</p >
179- <p class =" text-sm text-gray-500 dark:text-gray-400 mt-0.5" >{{ ed.desc }}</p >
180- </div >
181- </RouterLink >
182- </AnimatedSection >
183- </div >
187+ <div class =" grid sm:grid-cols-2 lg:grid-cols-4 gap-5" >
188+ <AnimatedSection v-for =" (ed, i) in editions" :key =" ed.n" :style =" { transitionDelay: `${i * 80}ms` }" >
189+ <RouterLink :to =" `/standard/ed${ed.n}`" class =" block rounded-xl border border-gray-200/80 dark:border-gray-700/60 bg-white dark:bg-navy-light p-5 hover:border-elf-blue/30 dark:hover:border-elf-blue/30 hover:shadow-lg hover:shadow-elf-blue/5 dark:hover:shadow-elf-blue/5 hover:-translate-y-0.5 transition-all duration-200 group h-full" >
190+ <div class =" flex items-center justify-between mb-3" >
191+ <span class =" font-mono text-xs font-bold px-2 py-0.5 rounded-full bg-elf-blue/10 dark:bg-elf-blue/15 text-elf-blue dark:text-elf-blue" >{{ ed.year }}</span >
192+ <span v-if =" ed.status === 'Current'" class =" text-[0.6rem] font-mono font-semibold tracking-wider uppercase px-2 py-0.5 rounded-full border border-emerald-400/40 text-emerald-600 dark:text-emerald-400 bg-emerald-50 dark:bg-emerald-900/20" >Current</span >
193+ <span v-else class =" text-[0.6rem] font-mono tracking-wider uppercase px-2 py-0.5 rounded-full text-gray-400 dark:text-gray-500 bg-gray-50 dark:bg-gray-800/60" >Withdrawn</span >
194+ </div >
195+ <h3 class =" font-serif font-bold text-lg text-gray-900 dark:text-white group-hover:text-elf-blue transition-colors mb-1" >Edition {{ ed.n }}</h3 >
196+ <p class =" text-xs text-gray-400 dark:text-gray-500 font-mono mb-3" >{{ ed.iso }}</p >
197+ <p class =" text-sm text-gray-600 dark:text-gray-300 leading-snug mb-4" >{{ ed.desc }}</p >
198+ <ul class =" space-y-1.5" >
199+ <li v-for =" f in ed.features" :key =" f" class =" text-xs text-gray-500 dark:text-gray-400 flex items-start gap-1.5" >
200+ <span class =" w-1 h-1 rounded-full bg-elf-blue/40 dark:bg-elf-blue/30 shrink-0 mt-1.5" />
201+ {{ f }}
202+ </li >
203+ </ul >
204+ </RouterLink >
205+ </AnimatedSection >
184206 </div >
185207 </div >
186208 </section >
0 commit comments