1import{$ as e,D as t,J as n,L as r,M as i,N as a,R as o,T as s,U as c,Y as l,a as u,at as d,b as f,bt as p,ct as m,et as h,f as g,g as _,h as v,ht as y,it as b,j as x,k as S,mt as C,nt as w,o as T,ot as E,q as D,s as O,st as k,tt as A,v as j,yt as M}from"../chunks/BQ5i3HPE.js";import"../chunks/xihTtKlq.js";import{t as N}from"../chunks/DVy-MfqO.js";import{r as P,t as F}from"../chunks/Czr6tvRo.js";import{a as I,i as L}from"../chunks/FEn-48i9.js";import{t as R}from"../chunks/7dkakuwt.js";import{n as ee,t as z}from"../chunks/D4SxGyrf.js";import{c as B,i as V,l as H,o as U,r as W,u as G}from"../chunks/TRWfDKy-.js";import{t as te}from"../chunks/DJWiklSp.js";function K(e,t){let n=T(t,[`$$slots`,`$$events`,`$$legacy`]),r=[[`path`,{d:`m15 18-6-6 6-6`}]];R(e,O({name:`chevron-left`},()=>n,{get iconNode(){return r}}))}function q(e,t){let n=T(t,[`$$slots`,`$$events`,`$$legacy`]),r=[[`path`,{d:`m9 18 6-6-6-6`}]];R(e,O({name:`chevron-right`},()=>n,{get iconNode(){return r}}))}var ne=a(`<img alt="" width="44" height="44" loading="lazy" decoding="async" class="svelte-1dgcu7p"/>`),re=a(`<img alt="" width="64" height="64" loading="lazy" decoding="async" class="svelte-1dgcu7p"/>`),J=a(`<p class="text-surface-700-300"> </p>`),Y=a(`<a class="anchor"> </a>`),X=a(`<p class="logo-marquee__note text-surface-600-400 svelte-1dgcu7p" data-testid="logo-marquee-note"> </p>`),Z=a(`<li class="logo-marquee__item svelte-1dgcu7p"><button type="button" class="logo-marquee__link svelte-1dgcu7p"><!> <span> </span></button> <div popover="auto" class="logo-marquee__popover card preset-filled-surface-50-950 border-surface-200-800 border shadow-xl svelte-1dgcu7p" role="dialog" data-testid="logo-marquee-popover"><div class="logo-marquee__popover-head svelte-1dgcu7p"><!> <p class="font-semibold"> </p></div> <!> <!> <!></div></li>`),ie=a(`<img alt="" width="44" height="44" loading="lazy" decoding="async" class="svelte-1dgcu7p"/>`),Q=a(`<li class="logo-marquee__item svelte-1dgcu7p"><span class="logo-marquee__link svelte-1dgcu7p"><!> <span> </span></span></li>`),$=a(`<section class="logo-marquee svelte-1dgcu7p" data-testid="logo-marquee"><div class="logo-marquee__viewport svelte-1dgcu7p"><ul class="logo-marquee__track svelte-1dgcu7p"></ul> <ul class="logo-marquee__track svelte-1dgcu7p" aria-hidden="true"></ul></div></section>`);function ae(e,n){y(n,!0);let r=u(n,`label`,3,`Selected organizations and projects`),a=u(n,`durationSeconds`,3,36),o=m(()=>`${Math.max(12,a())}s`),d=(e,t)=>`logo-marquee-popover-${t}-${e.label.replace(/[^a-z0-9]+/giu,`-`).replace(/^-|-$/gu,``).toLowerCase()}`,f=e=>/^https?:\/\//u.test(e),_=e=>f(e)?new URL(e).host:`Projects`;var b=i(),T=A(b),E=e=>{var i=$();let a;var u=h(i),m=h(u);s(m,23,()=>n.items,(e,t)=>`${t}-${e.label}`,(e,r,i)=>{var a=Z(),o=h(a),s=h(o),u=e=>{var t=ne();l(()=>g(t,`src`,c(r).logo)),x(e,t)};t(s,e=>{c(r).logo&&e(u)});var m=w(s,2),v=h(m,!0);p(m),p(o);var y=w(o,2),b=h(y),C=h(b),T=e=>{var t=re();l(()=>g(t,`src`,c(r).logo)),x(e,t)};t(C,e=>{c(r).logo&&e(T)});var E=w(C,2),D=h(E,!0);p(E),p(b);var O=w(b,2),k=e=>{var t=J(),n=h(t,!0);p(t),l(()=>S(n,c(r).description)),x(e,t)};t(O,e=>{c(r).description&&e(k)});var A=w(O,2),j=e=>{var t=Y(),n=h(t,!0);p(t),l((e,i,a)=>{g(t,`href`,c(r).href),g(t,`target`,e),g(t,`rel`,i),S(n,a)},[()=>f(c(r).href)?`_blank`:void 0,()=>f(c(r).href)?`noopener`:void 0,()=>_(c(r).href)]),x(e,t)};t(A,e=>{c(r).href&&e(j)});var M=w(A,2),N=e=>{var t=X(),r=h(t,!0);p(t),l(()=>S(r,n.markNote)),x(e,t)};t(M,e=>{c(r).logo&&n.markNote&&e(N)}),p(y),p(a),l((e,t)=>{g(o,`popovertarget`,e),S(v,c(r).label),g(y,`id`,t),g(y,`aria-label`,c(r).label),S(D,c(r).label)},[()=>d(c(r),c(i)),()=>d(c(r),c(i))]),x(e,a)}),p(m);var y=w(m,2);s(y,23,()=>n.items,(e,t)=>`repeat-${t}-${e.label}`,(e,n)=>{var r=Q(),i=h(r),a=h(i),o=e=>{var t=ie();l(()=>g(t,`src`,c(n).logo)),x(e,t)};t(a,e=>{c(n).logo&&e(o)});var s=w(a,2),u=h(s,!0);p(s),p(i),p(r),l(()=>S(u,c(n).label)),x(e,r)}),p(y),p(u),p(i),l(()=>{g(i,`aria-label`,r()),a=v(i,``,a,{"--marquee-duration":c(o)})}),x(e,i)};t(T,e=>{n.items.length>0&&e(E)}),x(e,b),C()}var oe=[`forEach`,`isDisjointFrom`,`isSubsetOf`,`isSupersetOf`],se=[`difference`,`intersection`,`symmetricDifference`,`union`],ce=!1,le=class e extends Set{#e=new Map;#t=k(0);#n=k(0);#r=D||-1;constructor(e){if(super(),e){for(var t of e)super.add(t);this.#n.v=super.size}ce||this.#a()}#i(e){return D===this.#r?k(e):E(e)}#a(){ce=!0;var t=e.prototype,n=Set.prototype;for(let e of oe)t[e]=function(...t){return c(this.#t),n[e].apply(this,t)};for(let r of se)t[r]=function(...t){c(this.#t);var i=n[r].apply(this,t);return new e(i)}}has(e){var t=super.has(e),n=this.#e,r=n.get(e);if(r===void 0){if(!t)return c(this.#t),!1;r=this.#i(!0),n.set(e,r)}return c(r),t}add(e){return super.has(e)||(super.add(e),d(this.#n,super.size),b(this.#t)),this}delete(e){var t=super.delete(e),n=this.#e,r=n.get(e);return r!==void 0&&(n.delete(e),d(r,!1)),t&&(d(this.#n,super.size),b(this.#t)),t}clear(){if(super.size!==0){super.clear();var e=this.#e;for(var t of e.values())d(t,!1);e.clear(),d(this.#n,0),b(this.#t)}}keys(){return this.values()}values(){return c(this.#t),super.values()}entries(){return c(this.#t),super.entries()}[Symbol.iterator](){return this.keys()}get size(){return c(this.#n)}},ue=a(`<div role="group" aria-roledescription="slide" data-testid="bird-slide"><a class="bird-carousel__link svelte-n2ilkr"><picture class="svelte-n2ilkr"><source type="image/avif"/> <source type="image/webp"/> <img loading="lazy" decoding="async" class="svelte-n2ilkr"/></picture></a></div>`),de=a(`<section class="bird-carousel" aria-roledescription="carousel" data-testid="bird-carousel"><figure class="space-y-2">
1<div class="bird-carousel__frame rounded-container bg-surface-200-800 svelte-n2ilkr" id="bird-carousel-slides"></div> <div class="flex items-center justify-between gap-2"><button type="button" class="btn-icon preset-tonal-surface" aria-controls="bird-carousel-slides" aria-label="Previous photograph"><!></button> <p class="text-surface-600-400 font-mono text-xs tabular-nums" aria-hidden="true"> </p> <button type="button" class="btn-icon preset-tonal-surface" aria-controls="bird-carousel-slides" aria-label="Next photograph"><!></button></div> <figcaption class="text-surface-600-400 text-xs leading-relaxed">Photograph by Jess Sullivan, from the post <a class="anchor"> </a> <a class="anchor" href="/attribution#photographs">Image provenance</a>.</figcaption></figure> <p class="sr-only" aria-live="polite" aria-atomic="true" data-testid="bird-carousel-status"> </p></section>`);function fe(e,n){y(n,!0);let r=u(n,`label`,3,`Bird photographs`),a=m(()=>n.photographs.flatMap(e=>{let t=z(e.base);return t?[{...e,sources:t}]:[]})),f=k(0),v=k(``),b=new le,T=m(()=>c(a).length),E=m(()=>c(a)[c(f)%Math.max(c(T),1)]),D=m(()=>c(T)>1?c(a)[(c(f)+1)%c(T)]:void 0),O=m(()=>c(E)?c(D)&&b.has(c(E).id)?[c(E),c(D)]:[c(E)]:[]);function N(e){if(c(T)<2)return;d(f,(c(f)+e+c(T))%c(T));let t=c(a)[c(f)];d(v,`Photograph ${c(f)+1} of ${c(T)}: ${t.alt}`)}function P(e){e.key===`ArrowRight`?(e.preventDefault(),N(1)):e.key===`ArrowLeft`&&(e.preventDefault(),N(-1))}function F(e,t){let n=()=>b.add(t);return e.complete&&e.naturalWidth>0&&n(),e.addEventListener(`load`,n,{once:!0}),()=>e.removeEventListener(`load`,n)}var I=i(),L=A(I),R=e=>{var t=de(),i=h(t),u=h(i);s(u,21,()=>c(O),e=>e.id,(e,t)=>{let r=m(()=>c(t).id===c(E).id);var i=ue();let s;var u=h(i),d=h(u),f=h(d),v=w(f,2),y=w(v,2);j(y,()=>e=>F(e,c(t).id)),p(d),p(u),p(i),l(e=>{s=_(i,1,`bird-carousel__slide svelte-n2ilkr`,null,s,{"bird-carousel__slide--visible":c(r)}),g(i,`aria-label`,e),g(i,`aria-hidden`,c(r)?void 0:`true`),i.inert=!c(r),g(i,`data-visible`,c(r)?`true`:`false`),g(u,`href`,c(t).post.url),g(f,`srcset`,c(t).sources.avif),g(f,`sizes`,n.sizes),g(v,`srcset`,c(t).sources.webp),g(v,`sizes`,n.sizes),g(y,`src`,c(t).sources.fallback),g(y,`alt`,c(t).alt),g(y,`width`,c(t).sources.width),g(y,`height`,c(t).sources.height),g(y,`fetchpriority`,c(r)?`auto`:`low`)},[()=>`${c(a).indexOf(c(t))+1} of ${c(T)}`]),o(`keydown`,u,P),x(e,i)}),p(u);var d=w(u,2),y=h(d);K(h(y),{size:20,"aria-hidden":`true`}),p(y);var b=w(y,2),C=h(b);p(b);var D=w(b,2);q(h(D),{size:20,"aria-hidden":`true`}),p(D),p(d);var k=w(d,2),A=w(h(k)),I=h(A,!0);p(A);var L=w(A);M(2),p(k),p(i);var R=w(i,2),ee=h(R,!0);p(R),p(t),l(()=>{g(t,`aria-label`,r()),y.disabled=c(T)<2,S(C,`${c(f)+1} / ${c(T)??``}`),D.disabled=c(T)<2,g(A,`href`,c(E).post.url),S(I,c(E).post.title),S(L,` (${c(E).post.date??``}). CC0 1.0. `),S(ee,c(v))}),o(`click`,y,()=>N(-1)),o(`keydown`,y,P),o(`click`,D,()=>N(1)),o(`keydown`,D,P),x(e,t)};t(L,e=>{c(E)&&e(R)}),x(e,I),C()}r([`keydown`,`click`]);var pe=a(`<img alt="" width="20" height="20" loading="lazy" decoding="async" class="community-mark svelte-1sa14h8"/>`),me=a(`<li><a class="btn preset-outlined-surface-300-700"><!> </a></li>`),he=a(`<img alt="" width="20" height="20" loading="lazy" decoding="async" class="community-mark svelte-1sa14h8"/>`),ge=a(`<li><a class="btn preset-outlined-surface-300-700"><!> </a></li>`),_e=a(`<section aria-labelledby="community-heading" class="grid items-start gap-8 md:grid-cols-2"><div class="space-y-4"><h2 id="community-heading" class="font-semibold">Built with community</h2> <h3 class="font-semibold">People and projects I sponsor</h3> <ul class="flex flex-wrap gap-2"></ul> <h3 class="font-semibold">Tech & FOSS</h3> <ul class="flex flex-wrap gap-2"></ul></div> <div class="space-y-4"><h2 class="font-semibold">Lewiston, Maine</h2> <!> <p class="text-sm"><a class="anchor font-mono"> </a></p></div></section>`);function ve(e,n){y(n,!0);var r=_e(),i=h(r),a=w(h(i),4);s(a,21,()=>U,e=>e.id,(e,n)=>{var r=me(),i=h(r),a=h(i),o=e=>{var t=pe();l(()=>g(t,`src`,c(n).logo)),x(e,t)};t(a,e=>{c(n).logo&&e(o)});var s=w(a,1,!0);p(i),p(r),l(()=>{g(i,`href`,c(n).href),g(i,`aria-label`,c(n).label),S(s,c(n).label)}),x(e,r)}),p(a);var o=w(a,4);s(o,21,()=>B,e=>e.href,(e,n)=>{var r=ge(),i=h(r),a=h(i),o=e=>{var t=he();l(()=>g(t,`src`,c(n).logo)),x(e,t)};t(a,e=>{c(n).logo&&e(o)});var s=w(a,1,!0);p(i),p(r),l(()=>{g(i,`href`,c(n).href),g(i,`aria-label`,c(n).label),S(s,c(n).label)}),x(e,r)}),p(o),p(i);var u=w(i,2),d=w(h(u),2);fe(d,{get photographs(){return G},sizes:`(min-width: 1280px) 35rem, (min-width: 768px) calc(50vw - 2rem), calc(100vw - 2rem)`});var f=w(d,2),m=h(f),_=h(m,!0);p(m),p(f),p(u),p(r),l(()=>{g(m,`href`,W.source),S(_,W.format)}),x(e,r),C()}var ye=a(`<div class="hero__media" aria-hidden="true"><picture class="hero__drift"><source type="image/webp" sizes="100vw"/> <img sizes="100vw" alt="" loading="eager" decoding="async"/></picture> <div class="hero__scrim"></div></div>`);function be(e,t){y(t,!0);let n=u(t,`fetchpriority`,3,`low`),r=m(()=>t.widths.includes(1280)?1280:t.widths[t.widths.length-1]),i=m(()=>t.widths.map(e=>`${t.base}-${e}.webp ${e}w`).join(`, `)),a=m(()=>t.widths.map(e=>`${t.base}-${e}.jpg ${e}w`).join(`, `));var o=ye(),s=h(o),d=h(s),f=w(d,2);p(s),M(2),p(o),l(()=>{g(d,`srcset`,c(i)),g(f,`src`,`${t.base}-${c(r)}.jpg`),g(f,`srcset`,c(a)),g(f,`width`,t.width),g(f,`height`,t.height),g(f,`fetchpriority`,n())}),x(e,o),C()}var xe=a(`<meta name="description"/>`),Se=a(`<a class="btn preset-outlined-primary-500" href="/projects">Projects</a>`),Ce=a(`<a class="border-surface-200-800 bg-surface-50-950/75 hover:border-primary-500 flex flex-col gap-2 rounded-container border p-5 text-sm transition-colors"><span class="text-primary-600-400 text-xs font-semibold tracking-wide uppercase"> </span> <span class="text-surface-700-300"> </span></a>`),we=a(`<p class="text-surface-700-300 text-lg leading-relaxed"> </p> <h2 id="projects-heading" class="sr-only">Selected work</h2> <div class="grid gap-4 sm:grid-cols-2"></div> <p class="text-sm"><a href="/projects" class="text-primary-600 hover:text-primary-500 font-medium underline">All projects and work</a></p>`,1),Te=a(`<section class="hero home-hero" aria-labelledby="page-title" data-testid="home-hero"><div class="home-hero__backdrop" aria-hidden="true"><!></div> <div class="hero__inner">
1<div class="hero-glass space-y-4"><h1 id="page-title" class="home-title-lockup font-bold"><span class="home-title-lockup__mark text-primary-500 dark:text-primary-400" aria-hidden="true"><!></span> <span> </span></h1> <p class="lede text-primary-600-400 text-xl"> </p> <p class="hero-grounds text-surface-700-300 font-mono text-sm"> </p> <div class="button-row flex flex-wrap gap-3 pt-2"><a class="btn preset-filled-primary-500 max-w-full text-center whitespace-normal" href="/engineering">Engineering & Contracting</a> <!></div></div></div> <p class="home-hero__credit text-surface-50 text-xs">Historic view of Auburn and Lewiston, Maine. <a href="/attribution#maine-image">Image provenance</a></p></section> <main class="page-shell space-y-16"><section aria-labelledby="connections-heading" class="space-y-3"><h2 id="connections-heading" class="font-semibold">Projects, collaborators, and communities</h2> <!> <p class="text-sm"><a class="anchor" href="/attribution">Mark sources and attribution</a></p></section> <section aria-label="What we work on" class="space-y-4"><p class="text-surface-700-300 text-lg"> </p> <div class="grid gap-3 md:grid-cols-2"></div></section> <section aria-labelledby="projects-heading" class="border-surface-200-800 space-y-6 border-t pt-10"><!></section> <!> <p class="flex max-w-none flex-wrap items-center gap-4 border-t border-surface-200-800 pt-8"><a class="btn preset-filled-primary-500" href="/contact">Start a conversation</a> <a class="anchor" href="/engineering">Explore engineering services</a></p></main>`,1);function Ee(r,i){y(i,!0);let a=ee(`/media/great-falls-lewiston-1930s`),o=new Set(V.map(e=>e.project)),u=e=>o.has(e.slug)||H.some(t=>t.logo===e.logo&&(t.label===e.org||t.label===e.name)),d=[...L.filter(e=>e.logo&&!u(e)).map(e=>({label:e.org??e.name,href:`/projects#${e.slug}`,logo:e.logo,description:e.summary})),...V.map(e=>{let t=e.project===void 0?void 0:L.find(t=>t.slug===e.project);return{label:e.label,logo:e.logo,...t===void 0?{}:{href:`/projects#${t.slug}`,description:t.summary}}}),...H],m=[{text:F[`home-work-gf`],href:`https://glorious.build`,label:`GloriousFlywheel`},{text:F[`home-work-services`],href:`/engineering`,label:`xoxd.ai Engineering & Contracting`}];var _=Te();f(`1uha8ag`,t=>{var r=xe();l(()=>g(r,`content`,F[`home-tagline`])),n(()=>{e.title=`${F[`home-title`]??``}: ${F[`home-tagline`]??``}`}),x(t,r)});var v=A(_),b=h(v),T=h(b),E=e=>{be(e,{get base(){return a.base},get widths(){return a.widths},get width(){return a.width},get height(){return a.height},fetchpriority:`high`})};t(T,e=>{a&&e(E)}),p(b);var D=w(b,2),O=h(D),k=h(O),j=h(k),R=h(j);N(R,{decorative:!0}),p(j);var z=w(j,2),B=h(z,!0);p(z),p(k);var U=w(k,2),W=h(U,!0);p(U);var G=w(U,2),K=h(G,!0);p(G);var q=w(G,2),ne=w(h(q),2),re=e=>{var t=Se();x(e,t)};t(ne,e=>{I.length>0&&e(re)}),p(q),p(O),p(D),M(2),p(v);var J=w(v,2),Y=h(J);ae(w(h(Y),2),{get items(){return d},label:`Explore projects and communities`,get markNote(){return P[`marks-past-work`]}}),M(2),p(Y);var X=w(Y,2),Z=h(X),ie=h(Z,!0);p(Z);var Q=w(Z,2);s(Q,21,()=>m,e=>e.href,(e,t)=>{var n=Ce(),r=h(n),i=h(r,!0);p(r);var a=w(r,2),o=h(a,!0);p(a),p(n),l((e,r)=>{g(n,`href`,c(t).href),g(n,`target`,e),g(n,`rel`,r),g(n,`aria-label`,`${c(t).label??``}: ${c(t).text??``}`),S(i,c(t).label),S(o,c(t).text)},[()=>c(t).href.startsWith(`http`)?`_blank`:void 0,()=>c(t).href.startsWith(`http`)?`noopener`:void 0]),x(e,n)}),p(Q),p(X);var $=w(X,2),oe=h($),se=e=>{var t=we(),n=A(t),r=h(n,!0);p(n);var i=w(n,4);s(i,21,()=>I,e=>e.slug,(e,t)=>{te(e,{get project(){return c(t)},compact:!0,heading:`h3`})}),p(i),M(2),l(()=>S(r,F[`home-iceberg`])),x(e,t)};t(oe,e=>{I.length>0&&e(se)}),p($),ve(w($,2),{}),M(2),p(J),l(()=>{S(B,F[`home-title`]),S(W,F[`home-tagline`]),S(K,F[`home-thesis`]),S(ie,F[`home-work-lede`])}),x(r,_),C()}export{Ee as component};
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.