1import{e as Vr}from"../chunks/GzlLhF5P.js";import{g as lr,c as qr,r as Fr}from"../chunks/DvV9y9Xz.js";import"../chunks/DsnmJJEf.js";import{o as Wr}from"../chunks/C9qZMMbn.js";import{p as Yr,i as vt,x as Gr,aC as Jr,f as O,g as t,t as w,a as c,d as Kr,s as n,aH as Qr,c as o,b as g,u as C,h as A,$ as Xr,r as e,n as D,k as or,aI as dt}from"../chunks/x83jh7KH.js";import{d as Zr,a as ut,s as m}from"../chunks/DAReoelR.js";import{i as k}from"../chunks/D_IWEzY3.js";import{k as $r}from"../chunks/DLMwEUxC.js";import{e as N,i as E}from"../chunks/cBzpmh88.js";import{c as te}from"../chunks/DDxwgufh.js";import{h as re}from"../chunks/CCI_xhAC.js";import{s as f}from"../chunks/B1DSTucH.js";import{s as mt}from"../chunks/Bu1Cd30_.js";import{s as ar}from"../chunks/uNDlo1gx.js";import{B as ee}from"../chunks/ChO5r-xX.js";import{A as oe}from"../chunks/DP_fKIAT.js";import{N as ae}from"../chunks/B9UNKLsh.js";import{a as se}from"../chunks/zbwZOqBF.js";import{t as le}from"../chunks/CVtYN_I_.js";const ne=!0;async function ie({params:T}){const h=await qr(T.slug);if(!h)throw Vr(404,"Post not found");const s=await lr(),R=new Set(h.metadata.tags||[]),P=h.metadata.category;let _=s.filter(v=>v.slug!==T.slug).map(v=>{const z=(v.tags||[]).filter(L=>R.has(L)).length*10+(v.category===P?1:0);return{post:v,score:z}}).filter(v=>v.score>0).sort((v,B)=>B.score-v.score||new Date(B.post.date)-new Date(v.post.date)).slice(0,3).map(v=>v.post);if(_.length<3){const v=new Set([T.slug,..._.map(z=>z.slug)]),B=s.filter(z=>!v.has(z.slug)).slice(0,3-_.length);_=[..._,...B]}const M=s.findIndex(v=>v.slug===T.slug),I=M>0?s[M-1]:null,j=M>=0&&M<s.length-1?s[M+1]:null;return{post:h.metadata,component:h.component,newer:I&&{slug:I.slug,title:I.title},older:j&&{slug:j.slug,title:j.title},readingTime:Fr(T.slug),relatedPosts:_}}async function ce(){return(await lr()).map(h=>({slug:h.slug}))}const Ye=Object.freeze(Object.defineProperty({__proto__:null,entries:ce,load:ie,prerender:ne},Symbol.toStringTag,{value:"Module"}));var ve=g('<meta name="robots" content="noindex, follow"/>'),de=g('<meta name="description"/> <meta property="og:title"/> <meta property="og:description"/> <meta name="twitter:title"/> <meta name="twitter:description"/> <!>',1),ue=g('<img loading="eager" fetchpriority="high" width="1600" height="900" class="absolute inset-0 w-full h-full object-cover"/> <div class="absolute inset-0 bg-gradient-to-b from-gray-900/70 via-gray-900/60 to-gray-900/70"></div>',1),me=g('<div class="absolute inset-0 bg-[var(--color-navy-900)]"></div> <div class="absolute inset-0 bg-gradient-to-br from-cyan-500/20 to-blue-500/10"></div> <div class="absolute top-10 right-10 w-64 h-64 bg-cyan-500/5 rounded-full filter blur-3xl"></div> <div class="absolute bottom-10 left-10 w-64 h-64 bg-blue-500/5 rounded-full filter blur-3xl"></div>',1),xe=g('<a class="font-semibold text-[var(--color-ink)] hover:text-[var(--color-accent-strong)] transition-colors"> </a>'),ge=g('<div class="font-semibold text-[var(--color-ink)]"> </div>'),sr=g("<a> </a>"),pe=g('<a href="#content" class="block text-[var(--color-ink-soft)] hover:text-[var(--color-accent-strong)] transition-colors py-1">Jump to content</a>'),fe=g('<details class="xl:hidden mb-8 rounded-xl border border-[var(--color-rule)] bg-[var(--color-surface-sunk)]"><summary class="cursor-pointer select-none px-5 py-3 font-semibold text-[var(--color-ink)]">On this page</summary> <nav class="px-5 pb-4 space-y-1 text-sm"></nav></details>'),he=g('<a class="inline-block text-sm font-medium px-3 py-1.5 rounded-full border border-[var(--color-rule)] bg-[var(--color-surface-sunk)] text-[var(--color-ink-soft)] hover:border-cyan-400 hover:text-[var(--color-accent-strong)] transition-colors"> </a>'),be=g('<div class="mt-12 pt-8 border-t border-[var(--color-rule)]"><p class="text-xs font-semibold tracking-[0.18em] uppercase text-[var(--color-ink-muted)] mb-3" style="font-family: var(--font-mono, monospace);">Topics</p> <div class="flex flex-wrap gap-2"></div></div>'),_e=g('<a class="group block rounded-xl border border-[var(--color-rule)] p-5 hover:border-[var(--color-accent)] transition-colors"><span class="block text-[11px] font-semibold tracking-[0.18em] uppercase text-[var(--color-ink-muted)] mb-2" style="font-family: var(--font-mono);">Previous</span> <span class="block font-semibold text-[var(--color-ink)] group-hover:text-[var(--color-accent-strong)] transition-colors leading-snug"> </span></a>'),we=g('<a><span class="block text-[11px] font-semibold tracking-[0.18em] uppercase text-[var(--color-ink-muted)] mb-2" style="font-family: var(--font-mono);">Next</span> <span class="block font-semibold text-[var(--color-ink)] group-hover:text-[var(--color-accent-strong)] transition-colors leading-snug"> </span></a>'),ke=g('<nav class="bg-[var(--color-surface)] border-t border-[var(--color-rule)]" aria-label="More articles"><div class="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 py-10 grid gap-4 sm:grid-cols-2"><!> <!></div></nav>'),ye=g('<img loading="lazy" width="1080" height="1080" class="w-full h-full object-cover"/>
1'),Ce=g('<article class="bg-[var(--color-surface)] rounded-xl overflow-hidden shadow-lg hover:shadow-xl transition-shadow border border-[var(--color-rule)]"><div class="h-48 bg-gradient-to-br from-cyan-500/10 to-blue-500/10 overflow-hidden"><!></div> <div class="p-6"><div class="text-sm text-[var(--color-accent-strong)] font-semibold mb-2"> </div> <h3 class="text-xl font-bold text-[var(--color-ink)] mb-3 line-clamp-2"> </h3> <p class="text-[var(--color-ink-soft)] mb-4 line-clamp-3"> </p> <a class="text-[var(--color-accent-strong)] hover:text-[var(--color-accent-strong)] font-semibold text-sm">Read More â</a></div></article>'),Te=g('<section class="bg-[var(--color-surface-sunk)] py-16 md:py-20 border-t border-[var(--color-rule)]"><div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"><h2 class="text-3xl font-bold text-[var(--color-ink)] mb-8">Related Articles</h2> <div class="grid md:grid-cols-3 gap-8"></div></div></section>'),Me=g(`<!> <!> <div class="fixed top-0 left-0 right-0 h-1 bg-[var(--color-surface-sunk)] z-50"><div class="h-full bg-gradient-to-r from-cyan-500 to-blue-500 transition-all duration-150"></div></div> <section class="bg-[var(--color-surface-sunk)] py-6 mt-1"><div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"><nav class="flex items-center space-x-2 text-sm"><a href="/" class="text-[var(--color-ink-muted)] hover:text-[var(--color-accent-strong)] transition-colors">Home</a> <svg class="w-4 h-4 text-[var(--color-ink-faint)]" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path></svg> <a href="/news/" class="text-[var(--color-ink-muted)] hover:text-[var(--color-accent-strong)] transition-colors">Field Notes</a> <svg class="w-4 h-4 text-[var(--color-ink-faint)]" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path></svg> <span class="text-[var(--color-ink)] font-medium truncate"> </span></nav></div></section> <section class="bg-[var(--color-surface)] border-b border-[var(--color-rule)]"><div class="max-w-7xl mx-auto"><div class="relative h-96 overflow-hidden"><!> <div class="absolute inset-0 flex items-center justify-center"><div class="text-center px-4 max-w-5xl mx-auto"><div class="bg-white/5 border border-white/20 rounded-3xl p-8 md:p-12 shadow-lg"><div class="inline-block bg-cyan-500/90 backdrop-blur-sm border border-cyan-400 rounded-full px-6 py-2 mb-6"><span class="text-white font-semibold text-sm"> </span></div> <h1 class="text-4xl md:text-5xl lg:text-6xl font-bold text-white mb-0 leading-tight drop-shadow-lg"> </h1></div></div></div></div></div></section> <section class="bg-[var(--color-surface)] border-b border-[var(--color-rule)]"><div class="py-8"><div class="mx-auto px-4 sm:px-6 lg:px-8" style="max-width: 1400px;"><div class="grid grid-cols-1 xl:grid-cols-[minmax(0,1fr)_minmax(0,800px)_minmax(0,1fr)] gap-8"><div class="hidden xl:block"></div> <div><div class="flex flex-wrap items-center justify-between gap-6"><div class="flex items-center gap-4"><div class="w-14 h-14 rounded-full bg-gradient-to-br from-cyan-500 to-blue-500 flex items-center justify-center text-white font-bold text-xl"> </div> <div><!> <div class="text-sm text-[var(--color-ink-muted)]"> </div></div></div> <div class="flex items-center gap-6"><div class="flex items-center gap-2 text-[var(--color-ink-soft)]"><svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"></path></svg> <span class="text-sm font-medium"> </span></div> <div class="flex items-center gap-2"><button class="p-2 rounded-lg hover:bg-[var(--color-surface-sunk)] transition-colors" title="Share on Twitter"><svg class="w-5 h-5 text-[var(--color-ink-soft)]" fill="currentColor" viewBox="0 0 24 24"><path d="M23 3a10.9 10.9 0 01-3.14 1.53 4.48 4.48 0 00-7.86 3v1A10.66 10.66 0 013 4s-4 9 5 13a11.64 11.64 0 01-7 2c9 5 20 0 20-11.5a4.5 4.5 0 00-.08-.83A7.72 7.72 0 0023 3z"></path></svg></button> <button class="p-2 rounded-lg hover:bg-[var(--color-surface-sunk)] transition-colors" title="Share on LinkedIn"><svg class="w-5 h-5 text-[var(--color-ink-soft)]" fill="currentColor" viewBox="0 0 24 24">
1<path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"></path></svg></button> <button class="p-2 rounded-lg hover:bg-[var(--color-surface-sunk)] transition-colors" title="Copy link"><svg class="w-5 h-5 text-[var(--color-ink-soft)]" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div> <p class="text-xl text-[var(--color-ink-soft)] leading-relaxed mt-8 border-l-4 border-cyan-500 pl-6 py-2"> </p></div> <div class="hidden xl:block"></div></div></div></div></section> <article class="bg-[var(--color-surface)]"><div class="py-16 md:py-20"><div class="mx-auto px-4 sm:px-6 lg:px-8" style="max-width: 1400px;"><div class="grid grid-cols-1 xl:grid-cols-[minmax(0,1fr)_minmax(0,800px)_minmax(0,1fr)] gap-8"><aside class="hidden xl:block"><div class="sticky top-10 space-y-6" style="max-height: calc(100vh - 3rem); overflow-y: auto;"><div class="bg-[var(--color-surface-sunk)] rounded-xl p-6 border border-[var(--color-rule)]"><h3 class="font-bold text-[var(--color-ink)] mb-4 flex items-center gap-2"><svg class="w-5 h-5 text-[var(--color-accent)]" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h7"></path></svg> On This Page</h3> <nav class="space-y-2 text-sm"><!></nav></div></div></aside> <div class="w-full"><!> <div id="content" class="blog-content"><!></div> <!> <div class="mt-16 p-8 bg-gradient-to-br from-[var(--color-surface-sunk)] to-[var(--color-surface-sunk)] rounded-2xl border border-[var(--color-rule)]"><div class="flex items-start gap-6"><div class="w-20 h-20 rounded-full bg-gradient-to-br from-cyan-500 to-blue-500 flex items-center justify-center text-white font-bold text-2xl flex-shrink-0"> </div> <div class="flex-1"><div class="font-bold text-xl text-[var(--color-ink)] mb-2"> </div> <p class="text-[var(--color-ink-soft)] mb-4"><!></p> <a href="/contact" class="text-[var(--color-accent-strong)] hover:text-[var(--color-accent-strong)] font-semibold text-sm"> </a></div></div></div></div> <div class="hidden xl:block"></div></div></div></div></article> <!> <section class="bg-[var(--color-surface)] border-t border-[var(--color-rule)] py-12"><div class="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8"><div class="bg-[var(--color-surface-sunk)] border border-[var(--color-rule)] rounded-2xl p-8"><!></div></div></section> <!> <section class="bg-[var(--color-surface)] py-16 md:py-20 border-t border-[var(--color-rule)]"><div class="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8"><div class="text-center mb-12"><a href="/news/" class="inline-flex items-center text-[var(--color-accent-strong)] hover:text-[var(--color-accent-strong)] transition-colors duration-300 group font-semibold"><svg class="w-5 h-5 mr-2 group-hover:-translate-x-1 transition-transform duration-300" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 19l-7-7 7-7"></path></svg> Back to all articles</a></div> <div class="bg-[var(--color-surface-sunk)] border border-[var(--color-rule-accent)] rounded-2xl p-8 md:p-12 text-center"><h2 class="text-2xl md:text-3xl font-bold text-[var(--color-ink)] mb-4">Ready to Build Your Product?</h2> <p class="text-lg text-[var(--color-ink-soft)] mb-6 max-w-2xl mx-auto">Let's discuss how we can help you bring your vision to life with expert cloud solutions</p> <a href="/contact" class="inline-block bg-cyan-500 text-white px-8 py-3 rounded-lg font-semibold hover:bg-cyan-600 transition-all duration-300 hover:bg-cyan-600 transition-colors">Get Started</a></div></div></section>`,1);function Ge(T,h){Yr(h,!0);const s=C(()=>h.data.post),R=C(()=>h.data.component),P=C(()=>h.data.relatedPosts||[]),H=C(()=>h.data.newer),_=C(()=>h.data.older),M=C(()=>{const r=se(t(s).author);return r?`/about/${r}`:null}),I=C(()=>h.data.readingTime??0);let j=vt(0),v=vt(Gr([]));Jr(()=>{t(s).slug,window.scrollTo(0,0),A(v,[],!0),A(j,0);const r=document.querySelector(".blog-content");
1if(r){const a=[];r.querySelectorAll("h2, h3").forEach(l=>{l.id&&a.push({id:l.id,text:l.textContent||"",level:Number(l.tagName[1])})}),A(v,a,!0)}});function B(){const r=window.location.href,a=t(s).title;window.open(`https://twitter.com/intent/tweet?text=${encodeURIComponent(a)}&url=${encodeURIComponent(r)}`,"_blank","width=550,height=420")}function z(){const r=window.location.href;window.open(`https://www.linkedin.com/sharing/share-offsite/?url=${encodeURIComponent(r)}`,"_blank","width=550,height=420")}let L=vt(null);function nr(){const r=window.location.href;navigator.clipboard.writeText(r).then(()=>{const a=event?.target?.closest("button");if(a){const l=a.title;a.title="Copied!",t(L)&&clearTimeout(t(L)),A(L,setTimeout(()=>{a.title=l},2e3),!0)}})}Wr(()=>{const r=()=>{const a=window.innerHeight,l=document.documentElement.scrollHeight-a,d=window.scrollY;A(j,d/l*100)};return window.addEventListener("scroll",r),()=>window.removeEventListener("scroll",r)});const U=C(()=>{if(t(s).seoTitle)return t(s).seoTitle;const r=" | Concept to Cloud",a=t(s).title;return(a+r).length<=60?a+r:a}),V=C(()=>{if(t(s).metaDescription)return t(s).metaDescription;const r=155,a=t(s).excerpt||"";if(a.length<=r)return a;const l=a.substring(0,r),d=Math.max(l.lastIndexOf(". "),l.lastIndexOf("! "),l.lastIndexOf("? "));if(d>80)return l.substring(0,d+1);const u=l.lastIndexOf(" ");return u>0?l.substring(0,u):l});var xt=Me();re("1gyup5m",r=>{var a=de(),l=O(a),d=n(l,2),u=n(d,2),i=n(u,2),p=n(i,2),x=n(p,2);{var b=y=>{var S=ve();c(y,S)};k(x,y=>{t(s).noindex&&y(b)})}w(()=>{f(l,"content",t(V)),f(d,"content",t(U)),f(u,"content",t(V)),f(i,"content",t(U)),f(p,"content",t(V))}),Qr(()=>{Xr.title=t(U)??""}),c(r,a)});var gt=O(xt);ee(gt,{get customTitle(){return t(s).title}});var pt=n(gt,2);oe(pt,{get title(){return t(s).title},get excerpt(){return t(s).excerpt},get author(){return t(s).author},get date(){return t(s).date},get dateModified(){return t(s).dateModified},get image(){return t(s).image},get category(){return t(s).category},get tags(){return t(s).tags}});var q=n(pt,2),ir=o(q);e(q);var F=n(q,2),ft=o(F),ht=o(ft),bt=n(o(ht),8),cr=o(bt,!0);e(bt),e(ht),e(ft),e(F);var W=n(F,2),_t=o(W),wt=o(_t),kt=o(wt);{var vr=r=>{var a=ue(),l=O(a);D(2),w(()=>{f(l,"src",t(s).image),f(l,"alt",t(s).title)}),c(r,a)},dr=r=>{var a=me();D(6),c(r,a)};k(kt,r=>{t(s).image?r(vr):r(dr,-1)})}var yt=n(kt,2),Ct=o(yt),Tt=o(Ct),Y=o(Tt),Mt=o(Y),ur=o(Mt,!0);e(Mt),e(Y);var St=n(Y,2),mr=o(St,!0);e(St),e(Tt),e(Ct),e(yt),e(wt),e(_t),e(W);var G=n(W,2),jt=o(G),Bt=o(jt),zt=o(Bt),Ht=n(o(zt),2),J=o(Ht),K=o(J),Q=o(K),xr=o(Q,!0);e(Q);var It=n(Q,2),Lt=o(It);{var gr=r=>{var a=xe(),l=o(a,!0);e(a),w(()=>{f(a,"href",t(M)),m(l,t(s).author)}),c(r,a)},pr=r=>{var a=ge(),l=o(a,!0);e(a),w(()=>m(l,t(s).author)),c(r,a)};k(Lt,r=>{t(M)?r(gr):r(pr,-1)})}var Ot=n(Lt,2),fr=o(Ot,!0);e(Ot),e(It),e(K);var At=n(K,2),X=o(At),Dt=n(o(X),2),hr=o(Dt);e(Dt),e(X);var Pt=n(X,2),Nt=o(Pt),Et=n(Nt,2),br=n(Et,2);e(Pt),e(At),e(J);var Rt=n(J,2),_r=o(Rt,!0);e(Rt),e(Ht),D(2),e(zt),e(Bt),e(jt),e(G);var Z=n(G,2),Ut=o(Z),Vt=o(Ut),qt=o(Vt),$=o(qt),Ft=o($),Wt=o(Ft),Yt=n(o(Wt),2),wr=o(Yt);{var kr=r=>{var a=or(),l=O(a);N(l,17,()=>t(v),E,(d,u)=>{var i=sr();let p;var x=o(i,!0);e(i),w(()=>{f(i,"href",`#${t(u).id??""}`),p=mt(i,1,"block text-[var(--color-ink-soft)] hover:text-[var(--color-accent-strong)] transition-colors py-1",null,p,{"pl-3":t(u).level===3}),ar(i,t(u).level===3?"font-size:13px":null),m(x,t(u).text)}),c(d,i)}),c(r,a)},yr=r=>{var a=pe();c(r,a)};k(wr,r=>{t(v).length>0?r(kr):r(yr,-1)})}e(Yt),e(Wt),e(Ft),e($);var Gt=n($,2),Jt=o(Gt);{var Cr=r=>{var a=fe(),l=n(o(a),2);N(l,21,()=>t(v),E,(d,u)=>{var i=sr();let p;var x=o(i,!0);e(i),w(()=>{f(i,"href",`#${t(u).id??""}`),p=mt(i,1,"block text-[var(--color-ink-soft)] hover:text-[var(--color-accent-strong)] transition-colors py-1",null,p,{"pl-3":t(u).level===3}),m(x,t(u).text)}),c(d,i)}),e(l),e(a),c(r,a)};k(Jt,r=>{t(v).length>1&&r(Cr)})}var tt=n(Jt,2),Tr=o(tt);$r(Tr,()=>t(s).slug,r=>{var a=or(),l=O(a);te(l,()=>t(R),(d,u)=>{u(d,{})}),c(r,a)}),e(tt);var Kt=n(tt,2);{var Mr=r=>{var a=be(),l=n(o(a),2);N(l,21,()=>t(s).tags,E,(d,u)=>{var i=he(),p=o(i,!0);e(i),w(x=>{f(i,"href",`/news/tag/${t(u)??""}`),m(p,x)},[()=>le(t(u))]),c(d,i)}),e(l),e(a),c(r,a)};k(Kt,r=>{t(s).tags?.length&&r(Mr)})}var Qt=n(Kt,2),Xt=o(Qt),rt=o(Xt),Sr=o(rt,!0);e(rt);var Zt=n(rt,2),et=o(Zt),jr=o(et);
1e(et);var ot=n(et,2),Br=o(ot);{var zr=r=>{var a=dt("Ex-NASA engineer and cloud architect with over a decade of experience building scalable systems for startups and enterprises.");c(r,a)},Hr=r=>{var a=dt("Platform engineering specialist focused on data-centric applications and cloud infrastructure optimization.");c(r,a)},Ir=r=>{var a=dt("Cloud solutions expert helping companies transform their infrastructure and accelerate development.");c(r,a)};k(Br,r=>{t(s).author==="Tom Barber"?r(zr):t(s).author==="Kat Barber"?r(Hr,1):r(Ir,-1)})}e(ot);var $t=n(ot,2),Lr=o($t);e($t),e(Zt),e(Xt),e(Qt),e(Gt),D(2),e(qt),e(Vt),e(Ut),e(Z);var tr=n(Z,2);{var Or=r=>{var a=ke(),l=o(a),d=o(l);{var u=x=>{var b=_e(),y=n(o(b),2),S=o(y,!0);e(y),e(b),w(()=>{f(b,"href",`/news/${t(_).slug??""}`),m(S,t(_).title)}),c(x,b)};k(d,x=>{t(_)&&x(u)})}var i=n(d,2);{var p=x=>{var b=we(),y=n(o(b),2),S=o(y,!0);e(y),e(b),w(()=>{f(b,"href",`/news/${t(H).slug??""}`),mt(b,1,`group block rounded-xl border border-[var(--color-rule)] p-5 hover:border-[var(--color-accent)] transition-colors sm:text-right ${t(_)?"":"sm:col-start-2"}`),m(S,t(H).title)}),c(x,b)};k(i,x=>{t(H)&&x(p)})}e(l),e(a),c(r,a)};k(tr,r=>{(t(H)||t(_))&&r(Or)})}var at=n(tr,2),rr=o(at),er=o(rr),Ar=o(er);ae(Ar,{}),e(er),e(rr),e(at);var Dr=n(at,2);{var Pr=r=>{var a=Te(),l=o(a),d=n(o(l),2);N(d,21,()=>t(P).slice(0,3),E,(u,i)=>{var p=Ce(),x=o(p),b=o(x);{var y=it=>{var ct=ye();w(()=>{f(ct,"src",t(i).image),f(ct,"alt",t(i).title)}),c(it,ct)};k(b,it=>{t(i).image&&it(y)})}e(x);var S=n(x,2),st=o(S),Nr=o(st,!0);e(st);var lt=n(st,2),Er=o(lt,!0);e(lt);var nt=n(lt,2),Rr=o(nt,!0);e(nt);var Ur=n(nt,2);e(S),e(p),w(()=>{m(Nr,t(i).category),m(Er,t(i).title),m(Rr,t(i).excerpt),f(Ur,"href",`/news/${t(i).slug??""}`)}),c(u,p)}),e(d),e(l),e(a),c(r,a)};k(Dr,r=>{t(P).length>0&&r(Pr)})}D(2),w((r,a,l,d)=>{ar(ir,`width: ${t(j)??""}%`),m(cr,t(s).title),m(ur,t(s).category),m(mr,t(s).title),m(xr,r),m(fr,a),m(hr,`${t(I)??""} min read`),m(_r,t(s).excerpt),m(Sr,l),m(jr,`Written by ${t(s).author??""}`),m(Lr,`Work with ${d??""} â`)},[()=>t(s).author.split(" ").map(r=>r[0]).join(""),()=>new Date(t(s).date).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"}),()=>t(s).author.split(" ").map(r=>r[0]).join(""),()=>t(s).author.split(" ")[0]]),ut("click",Nt,B),ut("click",Et,z),ut("click",br,nr),c(T,xt),Kr()}Zr(["click"]);export{Ge as component,Ye as universal};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.