1import{Dt as e,Et as t,Gt as n,Ht as r,Lt as i,O as a,Ot as o,St as s,Xt as c,Yt as l,Zt as u,a as d,b as f,bt as p,cn as m,gt as h,i as g,k as ee,pn as _,rn as v,wt as y,xt as b,zt as x}from"./DgRgCsqZ.js";import{t as S}from"./CaOfZOui.js";import{t as C}from"./CHJPsw_z.js";import{r as w,t as T}from"./C0BuOzEu.js";import{t as te}from"./ByamwK2W.js";import{r as ne,s as re,t as ie}from"./B0aJPVPi.js";var E=e=>e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`),D=/\[([^\]]+)\]\(((?:https?:\/\/|\/|mailto:)[^\s)]+)\)/g,O=e=>E(e).replace(D,(e,t,n)=>`<a href="${n}"${n.startsWith(`/`)?``:` target="_blank" rel="noopener noreferrer"`}>${t}</a>`),k={class:`page_wrapper`},A={class:`page_section`},j={class:`content_container post`},M={class:`reveal post_header`},N={class:`post_title`},P={class:`post_excerpt`},F={class:`post_badges`},I={class:`post_badge`},L={class:`post_badge`},R={class:`reveal post_body`},z={key:0,class:`post_subheading`},B=[`src`,`alt`],V=[`innerHTML`],H={class:`reveal post_related`},U={class:`section_heading`},W={class:`writings_list`},G={class:`writing_title`},K={class:`writing_date`},q=o({__name:`[slug]`,async setup(o){let E,D,q=a(),J=ee(),Y=q.params.slug,{data:ae}=([E,D]=l(()=>S(`post_${Y}`,()=>ie(Y))),E=await E,D(),E),X=ae.value;if(!X)throw f({statusCode:404,statusMessage:`Post not found`,fatal:!0});let{data:oe}=([E,D]=l(()=>ne()),E=await E,D(),E),se=p(()=>(oe.value??re).filter(e=>e.slug!==X.slug).slice(0,3)),Z=v(`Back`),Q=v(!1);i(()=>{let e=J.options.history.state.back;typeof e==`string`&&(Q.value=!0,e===`/`?Z.value=`Back to Home`:e.startsWith(`/writings`)?Z.value=`Back to Writings`:e.startsWith(`/works`)&&(Z.value=`Back to Works`))});let ce=()=>{Q.value?J.back():J.push(`/writings`)},$=(()=>{let e=new Date(X.date);return Number.isNaN(e.getTime())?void 0:e.toISOString()})();return d({title:`${X.title} â Danny Kinz`,description:X.excerpt,ogTitle:X.title,ogDescription:X.excerpt,ogType:`article`,articlePublishedTime:$,articleAuthor:[`Daniel Akinleye`],twitterCard:`summary_large_image`,twitterTitle:X.title,twitterDescription:X.excerpt,ogImage:X.image||`https://dannykinz.com/og-image.png`,twitterImage:X.image||`https://dannykinz.com/og-image.png`}),g({script:[{key:`ldjson-article`,type:`application/ld+json`,innerHTML:w(T(X,$))}]}),(i,a)=>{let o=te,l=C,d=n(`swipe-reveal`),f=n(`reveal`),p=n(`scramble-view`),g=n(`scramble-hover`);return x(),y(`main`,k,[b(`article`,A,[b(`div`,j,[u((x(),y(`header`,M,[b(`button`,{type:`button`,class:`post_back`,onClick:ce},[a[0]||=b(`svg`,{class:`post_back_icon`,viewBox:`0 0 12 10`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`},[b(`path`,{d:`M5 1L1 5L5 9M1 5H11`,stroke:`currentColor`,"stroke-width":`1.2`,"stroke-linecap":`round`,"stroke-linejoin":`round`})],-1),t(` `+_(m(Z)),1)]),u((x(),y(`h1`,N,[t(_(m(X).title),1)])),[[d]]),u((x(),y(`p`,P,[t(_(m(X).excerpt),1)])),[[d,`soft`]]),b(`div`,F,[b(`span`,I,_(m(X).date),1),b(`span`,L,_(m(X).category),1)])])),[[f]]),u((x(),y(`div`,R,[(x(!0),y(h,null,r(m(X).blocks,(e,t)=>(x(),y(h,{key:t},[e.type===`h2`?(x(),y(`h2`,z,_(e.text),1)):e.type===`img`?(x(),y(`img`,{key:1,src:e.src,alt:e.alt||``,class:`post_image`,loading:`lazy`},null,8,B)):(x(),y(`p`,{key:2,class:`post_paragraph`,innerHTML:(`renderRichText`in i?i.renderRichText:m(O))(e.text??``)},null,8,V))],64))),128))])),[[f]]),e(o),u((x(),y(`section`,H,[u((x(),y(`h2`,U,[...a[1]||=[t(`Related Articles`,-1)]])),[[p]]),b(`div`,W,[(x(!0),y(h,null,r(m(se),e=>(x(),s(l,{key:e.slug,to:`/${e.slug}`,class:`writing_row`},{default:c(()=>[b(`span`,G,_(e.title),1),b(`span`,K,_(e.date),1)]),_:2},1032,[`to`]))),128))]),u((x(),s(l,{to:`/writings`,class:`button_base button_secondary`},{default:c(()=>[...a[2]||=[t(`View All`,-1)]]),_:1})),[[g]])])),[[f]])])])])}}});export{q as default};
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.