1;!function(){try { var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&((e._debugIds|| (e._debugIds={}))[n]="a31236b6-8e71-4d49-737f-45dedac728c1")}catch(e){}}(); 2(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,269334,(e,s,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a={callServer:function(){return l.callServer},createServerReference:function(){return o.createServerReference},findSourceMapURL:function(){return i.findSourceMapURL}};for(var r in a)Object.defineProperty(t,r,{enumerable:!0,get:a[r]});let l=e.r(625935),i=e.r(329089),o=e.r(879556)},788638,e=>{e.v({description:"NewsletterForm-module-scss-module__3yPcEG__description",error:"NewsletterForm-module-scss-module__3yPcEG__error",errorHidden:"NewsletterForm-module-scss-module__3yPcEG__errorHidden",errorVisible:"NewsletterForm-module-scss-module__3yPcEG__errorVisible",field:"NewsletterForm-module-scss-module__3yPcEG__field",fields:"NewsletterForm-module-scss-module__3yPcEG__fields",form:"NewsletterForm-module-scss-module__3yPcEG__form",header:"NewsletterForm-module-scss-module__3yPcEG__header",hint:"NewsletterForm-module-scss-module__3yPcEG__hint",honeypot:"NewsletterForm-module-scss-module__3yPcEG__honeypot",label:"NewsletterForm-module-scss-module__3yPcEG__label",submit:"NewsletterForm-module-scss-module__3yPcEG__submit",success:"NewsletterForm-module-scss-module__3yPcEG__success",title:"NewsletterForm-module-scss-module__3yPcEG__title",wrapper:"NewsletterForm-module-scss-module__3yPcEG__wrapper"})},654119,e=>{"use strict";var s=e.i(894584);e.i(116233);var t=e.i(877957),a=e.i(59937),r=e.i(825440),l=e.i(368847),i=e.i(749704),i=i,o=e.i(885920),d=e.i(32996),n=e.i(269334);let c=(0,n.createServerReference)("605b573b4c5406fdbaf2cb06a2d8685d9150d1032a",n.callServer,void 0,n.findSourceMapURL,"subscribeAction");var u=e.i(788638);let m={status:"idle",fieldErrors:{},message:""};function _({label:e}){let{pending:a}=(0,d.useFormStatus)();return(0,s.jsx)(t.Button,{type:"submit",variant:"primary",isLoading:a,"aria-disabled":a,icon:(0,s.jsx)(i.default,{size:16}),iconPosition:"right",className:u.default.submit,...a&&{tabIndex:-1},children:e})}e.s(["NewsletterForm",0,function({title:e="Subscribe to the newsletter",description:t="Get the latest posts delivered right to your inbox.",emailPlaceholder:i="Enter your email",namePlaceholder:d="Your name (optional)",submitLabel:n="Subscribe",source:h="blog",showName:g=!1,showHeader:f=!0,className:p,onSuccess:N,onError:x}){let[b,v]=(0,o.useActionState)(c,m);return"success"===b.status&&N&&N(),"error"===b.status&&b.message&&x&&x(b.message),(0,s.jsxs)("div",{className:`${u.default.container} ${p||""}`,children:[f&&(0,s.jsxs)("div",{className:u.default.header,children:[(0,s.jsx)(a.Heading,{variant:"subheading",as:"h3",className:u.default.title,children:e}),(0,s.jsx)(l.Text,{variant:"body",className:u.default.description,children:t})]}),(0,s.jsxs)("form",{action:v,className:u.default.form,children:[(0,s.jsx)("input",{type:"hidden",name:"source",value:h}),(0,s.jsx)("input",{type:"hidden",name:"website",value:""}),g&&(0,s.jsxs)("div",{className:u.default.field,children:[(0,s.jsx)("label",{htmlFor:"newsletter-name",className:u.default.label,children:(0,s.jsx)(l.Text,{variant:"caption",color:"secondary",weight:600,as:"span",children:"Name"})}),(0,s.jsx)(r.Input,{id:"newsletter-name",name:"name",type:"text",placeholder:d,autoComplete:"name","aria-describedby":b.fieldErrors.name?"newsletter-name-error":void 0,invalid:!!b.fieldErrors.name}),(0,s.jsx)("div",{id:"newsletter-name-error",role:"alert","aria-live":"polite",className:b.fieldErrors.name?u.default.errorVisible:u.default.errorHidden,children:b.fieldErrors.name??""})]}),(0,s.jsxs)("div",{className:u.default.field,children:[(0,s.jsx)("label",{htmlFor:"newsletter-email",className:u.default.label,children:(0,s.jsxs)(l.Text,{variant:"caption",color:"secondary",weight:600,as:"span",children:["Email",(0,s.jsx)("span",{"aria-hidden":"true",children:"*"})]})}),(0,s.jsx)(r.Input,{id:"newsletter-email",name:"email",type:"email",placeholder:i,autoComplete:"email",required:!0,"aria-describedby":b.fieldErrors.email?"newsletter-email-error":void 0,invalid:!!b.fieldErrors.email}),(0,s.jsx)("div",{id:"newsletter-email-error",role:"alert","aria-live":"polite",className:b.fieldErrors.email?u.default.errorVisible:u.default.errorHidden,children:b.fieldErrors.email??""})]}),"success"===b.status&&b.message&&(0,s.jsx)("output",{className:u.default.success,"aria-live":"polite",children:(0,s.jsx)(l.Text,{variant:"caption",as:"span",children:b.message})}),"error"===b.status&&b.message&&(0,s.jsx)(l.Text,{variant:"caption",className:u.default.error,role:"alert",children:b.message}),(0,s.jsx)(_,{label:n})]})]})}],654119)},467121,e=>{e.v({banner:"NewsletterStatus-module-scss-module__0wZYCa__banner",icon:"NewsletterStatus-module-scss-module__0wZYCa__icon",title:"NewsletterStatus-module-scss-module__0wZYCa__title"})},583863,e=>{"use strict";var s=e.i(894584);e.i(116233);var t=e.i(736318),a=e.i(59937),r=e.i(892688),l=e.i(368847),i=e.i(885920),o=e.i(467121);let d={confirmed:{title:"Subscription confirmed",description:"You're now subscribed to Subhbits. Watch your inbox for updates.",icon:r.SuccessIcon},unsubscribed:{title:"Unsubscribed",description:"You've been removed from the mailing list. You won't receive further emails.",icon:t.ErrorIcon},error:{title:"Something went wrong",description:"The link may have expired. Try subscribing again.",icon:t.ErrorIcon},missingToken:{title:"Invalid link",description:"The link is missing required information. Try subscribing again.",icon:t.ErrorIcon}};e.s(["NewsletterStatus",0,function(){let[e,t]=(0,i.useState)(null),[r,n]=(0,i.useState)("");if((0,i.useEffect)(()=>{let e=new URLSearchParams(window.location.search),s=e.get("newsletter");s&&("confirmed"===s?t("confirmed"):"unsubscribed"===s?t("unsubscribed"):"error"===s?(t("error"),n(e.get("message")??"")):"missing-token"===s&&t("missingToken"))},[]),!e)return null;
2let c=d[e],u=c.icon;return(0,s.jsxs)("div",{className:o.default.banner,role:"alert",children:[(0,s.jsx)("span",{className:o.default.icon,"aria-hidden":"true",children:(0,s.jsx)(u,{})}),(0,s.jsxs)("div",{children:[(0,s.jsx)(a.Heading,{variant:"subheading",className:o.default.title,children:c.title}),(0,s.jsx)(l.Text,{variant:"body",color:"muted",children:r||c.description})]})]})}])},586393,e=>{"use strict";e.s(["estimateReadingTime",0,function(e){return Math.max(1,Math.round(e.trim().split(/\s+/).length/238))}])},352793,e=>{e.v({chipRow:"BlogList-module-scss-module__Q0N1Pa__chipRow",clearBtn:"BlogList-module-scss-module__Q0N1Pa__clearBtn",container:"BlogList-module-scss-module__Q0N1Pa__container",dash:"BlogList-module-scss-module__Q0N1Pa__dash",date:"BlogList-module-scss-module__Q0N1Pa__date",description:"BlogList-module-scss-module__Q0N1Pa__description",empty:"BlogList-module-scss-module__Q0N1Pa__empty",eyebrow:"BlogList-module-scss-module__Q0N1Pa__eyebrow",featured:"BlogList-module-scss-module__Q0N1Pa__featured",featuredCopy:"BlogList-module-scss-module__Q0N1Pa__featuredCopy",featuredDescription:"BlogList-module-scss-module__Q0N1Pa__featuredDescription",featuredKicker:"BlogList-module-scss-module__Q0N1Pa__featuredKicker",featuredMeta:"BlogList-module-scss-module__Q0N1Pa__featuredMeta",featuredTitle:"BlogList-module-scss-module__Q0N1Pa__featuredTitle",filterFooter:"BlogList-module-scss-module__Q0N1Pa__filterFooter",filterGroup:"BlogList-module-scss-module__Q0N1Pa__filterGroup",filterLabel:"BlogList-module-scss-module__Q0N1Pa__filterLabel",filters:"BlogList-module-scss-module__Q0N1Pa__filters",header:"BlogList-module-scss-module__Q0N1Pa__header",index:"BlogList-module-scss-module__Q0N1Pa__index",inlineTag:"BlogList-module-scss-module__Q0N1Pa__inlineTag",list:"BlogList-module-scss-module__Q0N1Pa__list",meta:"BlogList-module-scss-module__Q0N1Pa__meta",postTitle:"BlogList-module-scss-module__Q0N1Pa__postTitle",resultCount:"BlogList-module-scss-module__Q0N1Pa__resultCount",row:"BlogList-module-scss-module__Q0N1Pa__row",searchInput:"BlogList-module-scss-module__Q0N1Pa__searchInput",series:"BlogList-module-scss-module__Q0N1Pa__series",seriesRow:"BlogList-module-scss-module__Q0N1Pa__seriesRow",staggerIn:"BlogList-module-scss-module__Q0N1Pa__staggerIn",subtitle:"BlogList-module-scss-module__Q0N1Pa__subtitle",tagCol:"BlogList-module-scss-module__Q0N1Pa__tagCol",title:"BlogList-module-scss-module__Q0N1Pa__title"})},484423,e=>{"use strict";var s=e.i(894584);e.i(116233);var t=e.i(877957),a=e.i(777317),r=e.i(59937),l=e.i(825440),i=e.i(314086),o=e.i(368847),d=e.i(586840),n=e.i(885920),c=e.i(702718),u=e.i(616563),m=e.i(586393),_=e.i(352793),h=e.i(552842);e.s(["BlogListClient",0,function({posts:e,allTags:g,allSeries:f}){let p,N,x,b,v,j,P,y,w,S,L,T,B,C,Q=(p=(0,h.useRouter)(),N=(0,h.usePathname)(),b=(x=(0,h.useSearchParams)()).get("q")??"",v=(0,n.useMemo)(()=>x.get("tags")?.split(",").filter(Boolean)??[],[x]),j=x.get("series")??"",P=Number.parseInt(x.get("page")??"1",10)||1,y=(0,n.useCallback)(e=>{let s=new URLSearchParams(x.toString());"search"in e&&(e.search?s.set("q",e.search):s.delete("q"),s.delete("page")),"tags"in e&&(e.tags&&e.tags.length>0?s.set("tags",e.tags.join(",")):s.delete("tags"),s.delete("page")),"series"in e&&(e.series?s.set("series",e.series):s.delete("series"),s.delete("page")),"page"in e&&1!==e.page?s.set("page",String(e.page)):"page"in e&&1===e.page&&s.delete("page");let t=s.toString();p.push(t?`${N}?${t}`:N,{scroll:!1})},[p,N,x]),w=(0,n.useCallback)(e=>y({search:e}),[y]),S=(0,n.useCallback)(e=>{y({tags:v.includes(e)?v.filter(s=>s!==e):[...v,e]})},[v,y]),L=(0,n.useCallback)(e=>y({series:e}),[y]),T=(0,n.useCallback)(e=>y({page:e}),[y]),B=(0,n.useCallback)(()=>{p.push(N,{scroll:!1})},[p,N]),C=b.length>0||v.length>0||j.length>0,{search:b,tags:v,series:j,page:P,setSearch:w,toggleTag:S,setSeries:L,setPage:T,clearFilters:B,hasActiveFilters:C,postsPerPage:10}),[E,F]=(0,n.useState)(!1),[k,G]=(0,n.useState)(Q.search),R=(0,c.useDebounce)(Q.setSearch,300);(0,n.useEffect)(()=>{G(Q.search)},[Q.search]);let M=(0,n.useCallback)(()=>{G(""),F(!1),Q.clearFilters()},[Q]),{results:I,isLoading:U}=(0,u.useSearchPosts)({query:Q.search,limit:50,enabled:Q.search.trim().length>=2}),$=Q.search.trim().length>=2,A=(0,n.useMemo)(()=>
2{if($){if(0===I.length&&!U)return[];let s=new Set(I.map(e=>e.slug)),t=e.filter(e=>s.has(e.slug));return I.map(e=>t.find(s=>s.slug===e.slug)).filter(e=>void 0!==e)}let s=e;return Q.tags.length>0&&(s=s.filter(e=>Q.tags.some(s=>e.tags.includes(s)))),Q.series&&(s=s.filter(e=>e.series===Q.series)),s},[e,$,I,U,Q.tags,Q.series]),D=(0,n.useMemo)(()=>{let e=A.length;return $&&U?"Searching...":$&&0===e?"No results found":$?`${e} result${1===e?"":"s"}`:Q.hasActiveFilters?`${e} post${1===e?"":"s"} found`:`${e} post${1===e?"":"s"}`},[A.length,$,U,Q.hasActiveFilters]),H=E?g:g.slice(0,8),O=g.length>8,Y=$||Q.hasActiveFilters?void 0:A[0],q=Y?A.slice(1):A,z=Math.ceil(q.length/Q.postsPerPage),K=Math.min(Q.page,Math.max(z,1)),V=(0,n.useMemo)(()=>{let e=(K-1)*Q.postsPerPage;return q.slice(e,e+Q.postsPerPage)},[q,K,Q.postsPerPage]),Z=Y?"More posts are being drafted.":$?"No posts match your search.":"No posts match your filters.";return(0,s.jsxs)("div",{className:_.default.container,children:[(0,s.jsxs)("header",{className:_.default.header,children:[(0,s.jsxs)("div",{className:_.default.eyebrow,children:[(0,s.jsx)("span",{className:_.default.dash}),(0,s.jsx)(o.Text,{variant:"caption",color:"secondary",children:"A tech journal"})]}),(0,s.jsxs)(r.Heading,{variant:"hero",as:"h1",weight:500,className:_.default.title,children:["Ideas on software, design,",(0,s.jsx)("br",{}),"and building things that matter."]}),(0,s.jsx)(o.Text,{variant:"body",color:"secondary",className:_.default.subtitle,children:"Longer than a tweet, shorter than a book. Written to think, not to rank."})]}),Y&&(0,s.jsxs)(d.default,{href:Y.permalink,className:_.default.featured,prefetch:!1,children:[(0,s.jsxs)("div",{className:_.default.featuredCopy,children:[(0,s.jsx)(o.Text,{variant:"caption",color:"accent",className:_.default.featuredKicker,children:"Featured essay"}),(0,s.jsx)(r.Heading,{variant:"heading",as:"h2",weight:500,className:_.default.featuredTitle,children:Y.title}),Y.description&&(0,s.jsx)(o.Text,{variant:"body-lg",color:"secondary",className:_.default.featuredDescription,children:Y.description})]}),(0,s.jsxs)("div",{className:_.default.featuredMeta,children:[(0,s.jsx)(o.Text,{variant:"caption",color:"muted",children:new Date(Y.date).toLocaleDateString("en-US",{timeZone:"UTC",year:"numeric",month:"short",day:"numeric"})}),(0,s.jsxs)(o.Text,{variant:"caption",color:"muted",children:[(0,m.estimateReadingTime)(Y.description??"")," min read"]}),Y.tags.slice(0,2).map(e=>(0,s.jsx)(o.Text,{variant:"caption",color:"accent",as:"span",className:_.default.inlineTag,children:e},e))]})]}),(0,s.jsxs)("div",{className:_.default.filters,children:[(0,s.jsx)(l.Input,{type:"search",placeholder:"Search posts...",value:k,onChange:e=>{let s=e.target.value;G(s),R(s)},className:_.default.searchInput,"aria-label":"Search posts"}),g.length>0&&(0,s.jsxs)("div",{className:_.default.filterGroup,children:[(0,s.jsx)(o.Text,{variant:"caption",color:"secondary",className:_.default.filterLabel,children:"Tags"}),(0,s.jsxs)("div",{className:_.default.chipRow,children:[H.map(e=>(0,s.jsx)(a.Chip,{size:"sm",selected:Q.tags.includes(e),onChange:()=>Q.toggleTag(e),children:e},e)),O&&!E&&(0,s.jsxs)(a.Chip,{size:"sm",selected:!1,onChange:()=>F(!0),children:["+",g.length-8," more"]}),E&&(0,s.jsx)(a.Chip,{size:"sm",selected:!1,onChange:()=>F(!1),children:"Show less"})]})]}),f.length>0&&(0,s.jsxs)("div",{className:_.default.filterGroup,children:[(0,s.jsx)(o.Text,{variant:"caption",color:"secondary",className:_.default.filterLabel,children:"Series"}),(0,s.jsxs)("div",{className:_.default.seriesRow,children:[(0,s.jsx)(a.Chip,{size:"sm",selected:""===Q.series,onChange:()=>Q.setSeries(""),children:"All"}),f.map(e=>(0,s.jsx)(a.Chip,{size:"sm",selected:Q.series===e,onChange:()=>Q.setSeries(e),children:e},e))]})]}),(0,s.jsxs)("div",{className:_.default.filterFooter,children:[(0,s.jsx)(o.Text,{variant:"caption",color:"secondary",className:_.default.resultCount,children:D}),Q.hasActiveFilters&&(0,s.jsx)(t.Button,{variant:"ghost",className:_.default.clearBtn,onClick:M,children:"Clear filters"})]})]}),0===V.length?(0,s.jsx)(o.Text,{variant:"body",color:"secondary",className:_.default.empty,children:Z}):(0,s.jsx)("div",{className:_.default.list,children:V.map((e,t)=>{let a=(K-1)*Q.postsPerPage+t+(Y?2:1),r=new Date(e.date).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"}),l=e.tags??[];return(0,s.jsxs)(d.default,{href:e.permalink,className:_.default.row,prefetch:!1,children:[(0,s.jsxs)(o.Text,{variant:"caption",color:"secondary",className:_.default.index,children:["â ",String(a).padStart(2,"0")]}),(0,s.jsxs)("div",{className:_.default.meta,children:[(0,s.jsx)(o.Text,{className:_.default.postTitle,children:e.title}),e.description&&(0,s.jsx)(o.Text,{variant:"body",color:"secondary",className:_.default.description,children:e.description}),e.series&&(0,s.jsxs)(o.Text,{variant:"caption",color:"primary",className:_.default.series,children:["Series: ",e.series,void 0!==e.seriesOrder&&null!==e.seriesOrder?` #${e.seriesOrder}`:""]})]}),(0,s.jsx)("div",{className:_.default.tagCol,children:l.slice(0,2).map(e=>(0,s.jsx)(o.Text,{variant:"caption",color:"secondary",as:"span",className:_.default.inlineTag,children:e},e))}),(0,s.jsx)(o.Text,{variant:"caption",color:"secondary",className:_.default.date,children:r})]},e.slug)})}),(0,s.jsx)(i.Pagination,{currentPage:K,totalPages:z,onPageChange:Q.setPage})]})}],484423)}]); 3 4//# debugId=a31236b6-8e71-4d49-737f-45dedac728c1 5//# sourceMappingURL=0j_ksgtl~tyd7.js.map
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.