1import{Y as e,o as t,q as n,t as r}from"./jsx-runtime-BTgOCYyl.js";import{t as i}from"./lib-BSGEjHjT.js";import{a,d as o,o as s,s as c}from"./src-Ch68KD4x.js";import{t as l}from"./site-MYsyMqoc.js";import{t as u}from"./seo-DRHdbsX5.js";import{l as d}from"./network-map-core-CzftGhvK.js";import{t as f}from"./map-page-shell-NWDZ7VKf.js";var p=e(n(),1),m=r(),h=e=>[...e].reverse().join(``);function g({user:e,domain:t,className:n,label:r}){let[i,a]=(0,p.useState)(),o=()=>`mailto:${e}@${t}`,s=()=>a(e=>e??o());return(0,m.jsx)(`a`,{href:i,onMouseEnter:s,onFocus:s,onTouchStart:s,onClick:e=>{if(!i){e.preventDefault();let t=o();a(t),window.location.href=t}},className:n,"aria-label":`Email ${e}`,children:r??(0,m.jsxs)(`span`,{children:[e,(0,m.jsx)(`span`,{"aria-hidden":`true`,children:`@`}),(0,m.jsx)(`span`,{"aria-hidden":`true`,style:{unicodeBidi:`bidi-override`,direction:`rtl`},children:h(t)})]})})}var _=()=>u({title:`Contact | ${l.name} (${l.asn})`,description:`Reach ${l.name} (${l.asn}) - peering, NOC, abuse and security, each read by a real person.`,path:`/contact`}),v={fullBleedMap:!0};function y(e){let[t,n]=e.split(`@`);return{user:t,domain:n??``}}function b(e){return l.contacts.find(t=>t.label===e)}function x({user:e,domain:t}){let[n,r]=(0,p.useState)(!1);return(0,m.jsx)(`button`,{type:`button`,onClick:()=>{try{navigator.clipboard?.writeText(`${e}@${t}`)}catch{}r(!0),setTimeout(()=>r(!1),1400)},"aria-label":`Copy the ${e} address`,className:`font-mono text-[11px] font-semibold`,style:{color:n?`var(--state-ok)`:`var(--text-dim)`,background:`transparent`,border:`none`,cursor:`pointer`,padding:0,transition:`color var(--dur-fast) var(--ease)`},onMouseEnter:e=>{n||(e.currentTarget.style.color=`var(--accent)`)},onMouseLeave:e=>{n||(e.currentTarget.style.color=`var(--text-dim)`)},children:n?`copied â`:`copy`})}var S=[`NOC`,`Abuse`,`Security`,`Legal`,`Privacy`].map(e=>b(e)).filter(e=>!!e),C=t(function(){let e=b(`Peering`);return(0,m.jsxs)(f,{children:[(0,m.jsxs)(`div`,{className:`max-w-[640px]`,children:[(0,m.jsx)(`p`,{className:`eyebrow`,children:`Contact`}),(0,m.jsx)(`h1`,{className:`mt-2 font-display text-[var(--fs-h1)] font-extrabold tracking-tight text-foreground`,children:`Say hi.`}),(0,m.jsx)(`p`,{className:`mt-4 text-[var(--fs-lead)] leading-relaxed text-muted-foreground`,children:`There's a real person on the other end of these addresses. Peering, a routing question, or a note to talk shop about routing - all genuinely welcome.`}),(0,m.jsxs)(`p`,{className:`mt-3 max-w-[560px] text-[15px] leading-relaxed text-muted-foreground`,children:[`The name is a small nod to a busy, well-connected corner of Alexandria. The network spans `,d.sites,` European cities, run to a standard we're happy to stake our own services on.`]}),(0,m.jsxs)(`div`,{className:`mt-6 flex flex-wrap items-center gap-2.5`,children:[(0,m.jsx)(c,{tone:`brand`,children:l.asn}),(0,m.jsxs)(c,{tone:`ok`,children:[(0,m.jsx)(o,{status:`up`,label:!1,size:7}),` usually replies within a day`]}),(0,m.jsx)(c,{tone:`neutral`,children:`EU timezone`})]})]}),(0,m.jsxs)(`div`,{className:`mt-6 grid items-start gap-5 lg:grid-cols-[1.15fr_1fr]`,children:[e&&(()=>{let{user:t,domain:n}=y(e.email);return(0,m.jsxs)(s,{pad:`lg`,accent:!0,className:`flex h-full flex-col`,children:[(0,m.jsx)(`p`,{className:`eyebrow`,children:`Peer, or just say hello`}),(0,m.jsx)(`h2`,{className:`mt-3 font-display text-[clamp(20px,2.6vw,24px)] font-semibold text-foreground`,children:e.description}),(0,m.jsx)(`p`,{className:`mt-2 text-[15px] leading-relaxed text-muted-foreground`,children:`Send over your ASN and where you'd like to meet, or say nothing in particular. Either way it lands in a real inbox.`}),(0,m.jsxs)(`div`,{className:`mt-5 flex flex-wrap gap-2`,children:[(0,m.jsx)(c,{tone:`neutral`,children:`Open, selective`}),(0,m.jsx)(c,{tone:`neutral`,children:`RPKI validated`}),(0,m.jsx)(c,{tone:`neutral`,children:`IPv4 + IPv6`})]}),(0,m.jsx)(`p`,{className:`mt-5 text-[13px] leading-relaxed text-[var(--text-dim)]`,children:`No form, no sales call - just email. We usually reply within a day, in EU timezone.`}),(0,m.jsxs)(`div`,{className:`mt-auto flex flex-wrap items-center justify-between gap-3 rounded-[var(--r-sm)] px-4 py-3.5`,style:{marginTop:`auto`,background:`var(--surface-sunken)`,border:`1px solid var(--border)`},children:[(0,m.jsx)(g,{user:t,domain:n,className:`font-mono text-[15px] font-medium text-[color:var(--accent)]`}),(0,m.jsx)(x,{user:t,domain:n})]})]})})(),(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsx)(`p`,{className:`eyebrow`,children:`When something needs ops`}),(0,m.jsx)(s,{pad:`none`,className:`overflow-hidden`,children:(0,m.jsx)(`div`,{className:`divi
1de-y`,style:{borderColor:`var(--border-soft)`},children:S.map(e=>{let{user:t,domain:n}=y(e.email);return(0,m.jsxs)(`div`,{className:`flex items-center justify-between gap-3 px-[18px] py-3.5`,children:[(0,m.jsxs)(`div`,{className:`min-w-0`,children:[(0,m.jsx)(`span`,{className:`font-semibold text-foreground`,children:e.label}),(0,m.jsx)(`p`,{className:`text-xs leading-relaxed text-muted-foreground`,children:e.description})]}),(0,m.jsx)(g,{user:t,domain:n,className:`shrink-0 font-mono text-sm text-[color:var(--accent)]`})]},e.label)})})}),(0,m.jsx)(`p`,{className:`text-xs leading-relaxed text-[var(--text-dim)]`,children:`Security reports are read quietly first. For anything actively on fire, NOC is the fastest door.`})]})]}),(0,m.jsx)(s,{pad:`lg`,className:`mt-5`,children:(0,m.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-x-6 gap-y-4`,children:[(0,m.jsxs)(`div`,{className:`max-w-sm`,children:[(0,m.jsx)(`h3`,{className:`font-display text-[18px] font-semibold text-foreground`,children:`Before you write`}),(0,m.jsx)(`p`,{className:`mt-1 text-sm leading-relaxed text-muted-foreground`,children:`The peering policy, session details and live numbers are all one page away - handy to skim first.`})]}),(0,m.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2.5`,children:[(0,m.jsx)(a,{as:i,to:`/peering`,variant:`ghost`,size:`sm`,children:`Peering policy â`}),(0,m.jsx)(a,{as:i,to:`/status`,variant:`ghost`,size:`sm`,children:`Network status â`}),l.links.peeringdb&&(0,m.jsx)(a,{as:`a`,href:l.links.peeringdb,target:`_blank`,rel:`noopener noreferrer nofollow`,variant:`link`,size:`sm`,children:`PeeringDB â`}),l.links.bgptools&&(0,m.jsx)(a,{as:`a`,href:l.links.bgptools,target:`_blank`,rel:`noopener noreferrer nofollow`,variant:`link`,size:`sm`,children:`bgp.tools â`})]})]})})]})});export{C as default,v as handle,_ as meta};
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.