1import{B as e,I as t,R as n,w as r,z as i}from"./chunk-6CSD65Y2-D6zLy3dp.js";import{t as a}from"./jsx-runtime-BGLTrfZy.js";import{n as o}from"./button-DrB63Wrb.js";import{n as s}from"./route-error-oT57U1b3.js";import{t as c}from"./OriginBlock-CbSpfUFF.js";import{r as l}from"./revalidation-BkkbzwDb.js";import{n as u,t as d}from"./calculators-aelNI-sd.js";import{t as f}from"./CalculatorEmbed-CY5Vrg-k.js";var p=a();function m(){return(0,p.jsxs)(`div`,{className:`pt-[52px] pb-[36px]`,children:[(0,p.jsx)(`span`,{className:`block font-mono text-[10px] tracking-[0.25em] text-zinc-500 mb-[18px]`,children:`// THE WORKBENCH`}),(0,p.jsx)(`h1`,{className:`font-brand font-bold text-[clamp(32px,5vw,46px)] tracking-[-0.02em] leading-[0.95] text-[#EDEDED] mb-[20px]`,children:`Calculators, and everything else.`}),(0,p.jsx)(`p`,{className:`font-mono text-[13px] leading-[1.6] text-[#A1A1AA] max-w-[60ch]`,children:`The tools that run on this site, then the rest of what I've shipped. Open a calculator to run it; open a project to see its git history. No signup, no email wall.`})]})}function h(e){return[{label:`COMMITS_7D`,value:`â² ${e.commits7d}`,accent:!0},{label:`STREAK`,value:`${e.streak} D`,accent:!1},{label:`LAST_PUSH`,value:e.lastPush,accent:!0},{label:`REPOS`,value:String(e.repos),accent:!1},{label:`TESTS`,value:e.tests.toLocaleString(),accent:!1},{label:`TOTAL_COMMITS`,value:e.totalCommits.toLocaleString(),accent:!1}]}function g({telemetry:e}){let t=h(e);return(0,p.jsx)(`div`,{className:`flex flex-wrap w-full`,style:{borderTop:`1px solid rgba(255,255,255,0.07)`,borderBottom:`1px solid rgba(255,255,255,0.07)`},children:t.map((e,n)=>(0,p.jsxs)(`div`,{className:`flex flex-col gap-[5px] py-[12px] pr-[20px] pl-0`,style:n===t.length-1?{marginRight:0}:{marginRight:20,borderRight:`1px solid rgba(255,255,255,0.07)`,paddingRight:20},children:[(0,p.jsx)(`span`,{className:`block font-mono text-[9px] tracking-[0.18em] text-zinc-500`,children:e.label}),(0,p.jsx)(`span`,{className:`font-mono text-[14px] font-medium ${e.accent?`text-emerald`:`text-[#EDEDED]`}`,children:e.value})]},e.label))})}function _(e){if(!Number.isFinite(e)||e<=0)return``;let t=Math.floor(e);if(t<1e3)return String(t);let n=t<1e6?1e3:1e6,r=t<1e6?`k`:`m`;return`${(t/n).toFixed(1).replace(/\.0$/,``)}${r}`}var v=`focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst`;function y({calcs:e,activeSlug:t,onSelect:n,onClear:r,runCounts:i}){return(0,p.jsxs)(`nav`,{"aria-label":`Calculators`,className:`bg-void flex flex-col`,children:[(0,p.jsx)(`button`,{type:`button`,onClick:r,className:`text-left font-mono text-[10px] tracking-[0.18em] text-zinc-500 hover:text-white transition-colors px-[16px] py-[14px] border-b border-white/[0.07] ${v}`,children:`â // ALL CALCULATORS`}),(0,p.jsx)(`ul`,{className:`flex flex-col`,children:e.map(e=>{let r=e.slug===t,a=_(i?.[e.slug]??0);return(0,p.jsx)(`li`,{children:(0,p.jsxs)(`button`,{type:`button`,"aria-current":r?!0:void 0,onClick:()=>n(e.slug),className:`w-full text-left flex items-center gap-[10px] px-[16px] py-[11px] border-b border-white/[0.07] transition-colors ${v} ${r?`bg-amethyst/[0.08]`:`hover:bg-white/[0.03]`}`,style:r?{borderLeft:`2px solid var(--color-amethyst)`}:{borderLeft:`2px solid transparent`},children:[(0,p.jsx)(`span`,{className:`w-[7px] h-[7px] rounded-full shrink-0`,style:{backgroundColor:e.hex,boxShadow:`0 0 9px ${e.hex}`}}),(0,p.jsx)(`span`,{className:`font-display font-semibold text-[12px] leading-tight ${r?`text-white`:`text-zinc-300`}`,children:e.name}),a&&(0,p.jsx)(`span`,{className:`font-mono text-[9px] text-zinc-600 ml-auto shrink-0`,children:a})]})},e.slug)})})]})}var b={emerald:`text-emerald`,amber:`text-amber`},x=`focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst`,S=d.filter(e=>e.embeddable).length,C=d.filter(e=>e.group===`FINANCE`),w=d.filter(e=>e.group===`FREEDOM`);function T({calc:e,runs:t,onOpen:n}){let r=b[e.accent],i=typeof t==`number`&&t>0;return(0,p.jsxs)(`button`,{type:`button`,onClick:()=>n(e.slug),className:`group relative bg-void p-[18px] flex flex-col gap-[7px] text-left transition-colors hover:bg-panel ${x}`,children:[(0,p.jsx)(`span`,{className:`absolute top-[18px] right-[18px] w-[7px] h-[7px] rounded-full`,style:{backgroundColor:e.hex,boxShadow:`0 0 9px ${e.hex}`}}),(0,p.jsx)(`span`,{className:`font-display font-semibold text-[14px] pr-[18px] ${r}`,children:e.name}),(0,p.jsx)(`p`,{className:`font-mono text-[11px] leading-[1.5] text-zinc-400 flex-1`,children:e.description}),(0,p.jsxs)(`div`,{className:`flex items-center justify-between mt-[4px]`,children:[(0,p.jsx)(`span`,{className:`font-mono text-[10px] text-zinc-600`,children:i?`${_(t)} RUNS`:``}),(0,p.jsx)(`span`,{className:`font-mono text-[10px] tracking-[0.12em] ${r} transition-transform group-hover:translate-x-[3px]`,children:`OPEN â`})]})]})}function E({label:e,labelClass:t,calcs:n,runCounts:r,onOpen:i}){return(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`span`,{className:`block font-mono text-[10px] tracking-[0.25em] mb-[12px] ${t}`,children:e}),(0,p.jsx)(`div`,{className:`grid grid-cols-1 min-[560px]:grid-cols-2 min-[900px]:grid-cols-3 gap-px bg-white/[0.07] border border-white/[0.07]`,children:n.map(e=>(0,p.jsx)(T,{calc:e,runs:r?.[e.slug],onOpen:i},e.slug))})]})}function D({prefill:e,runCounts:t}){let[r,i]=n(),a=r.get(`calc`),o=a?u[a]:void 0,s=e=>{i(t=>(t.set(`calc`,e),t),{replace:!0,preventScrollReset:!0})},c=()=>{i(e=>(e.delete(`calc`),e),{replace:!0,preventScrollReset:!0})};return(0,p.jsxs)(`section`,{className:`border-t border-white/[0.07] py-[52px]`,children:[(0,p.jsxs)(`div`,{className:`flex flex-wrap items-baseline justify-between gap-3 mb-[24px]`,children:[(0,p.jsx)(`span`,{className:`font-mono text-[11px] tracking-[0.25em] text-[#EDEDED]`,children:`// CALCULATORS`}),(0,p.jsxs)(`span`,{className:`font-mono text-[10px] tracking-[0.14em] text-zinc-500`,children:[`CLICK TO RUN · `,S,` LIVE`]})]}),o?(0,p.jsxs)(`div`,{className:`grid grid-cols-1 min-[760px]:grid-cols-[268px_1fr] gap-px bg-white/[0.07] border border-white/[0.07]`,children:[(0,p.jsx)(y,{calcs:d,activeSlug:o.slug,onSelect:s,onClear:c,runCounts:t}),(0,p.jsxs)(`div`,{className:`bg-void p-[24px]`,style:{borderLeft:`2px solid ${o.hex}`},children:[(0,p.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3 mb-[18px]`,children:[(0,p.jsxs)(`div`,{className:`flex flex-col gap-[8px]`,children:[(0,p.jsxs)(`span`,{className:`font-mono text-[9px] tracking-[0.2em] ${b[o.accent]}`,children:[o.group,` · CALCULATOR`]}),(0,p.jsx)(`h3`,{className:`font-display font-semibold text-[clamp(20px,2.4vw,26px)] text-white leading-tight`,children:o.name}),(0,p.jsx)(`p`,{className:`font-mono text-[12px] leading-[1.55] text-zinc-400 max-w-[52ch]`,children:o.description})]}),(0,p.jsx)(`button`,{type:`button`,onClick:c,className:`font-mono text-[10px] tracking-[0.14em] text-zinc-500 hover:text-white transition-colors whitespace-nowrap shrink-0 ${x}`,children:`â ALL CALCULATORS`})]}),(0,p.jsx)(f,{slug:o.slug,prefill:e})]})]}):(0,p.jsxs)(`div`,{className:`flex flex-col gap-[36px]`,children:[(0,p.jsx)(E,{label:`// FINANCE`,labelClass:`text-emerald`,calcs:C,runCounts:t,onOpen:s}),(0,p.jsx)(E,{label:`// FREEDOM`,labelClass:`text-amber`,calcs:w,runCounts:t,onOpen:s})]})]})}var O=[{slug:`domdhi-platform`,name:`domdhi.platform`,domain:`amethyst`,type:`PLATFORM`,status:`LIVE`,statusClass:`text-amethyst`,blurb:`The personal OS this
1site runs on. Six domains, every number live.`,source:{kind:`local`},openHref:`/login`},{slug:`claude-code-tts`,name:`claude-code-tts`,domain:`cyan`,type:`OPEN SOURCE`,status:`LIVE`,statusClass:`text-cyan`,blurb:`A TTS hook for Claude Code â your agent talks back.`,source:{kind:`github`,repo:`Domdhi/claude-code-tts`,private:!1},openHref:`https://github.com/Domdhi/claude-code-tts`},{slug:`domdhi-agents`,name:`domdhi.agents`,domain:`cyan`,type:`PRIVATE`,status:`IN PROGRESS`,statusClass:`text-cyan`,blurb:`The agent + command toolkit that builds this platform.`,source:{kind:`github`,repo:`Domdhi/domdhi.agents`,private:!0},openHref:null},{slug:`domdhi-cockpit`,name:`domdhi.cockpit`,domain:`amber`,type:`LOCAL GUI`,status:`V1 COMPLETE`,statusClass:`text-amber`,blurb:`A local control surface for orchestrating coding agents.`,source:{kind:`none`},openHref:null},{slug:`media-vault`,name:`Media Vault`,domain:`violet`,type:`LIVE APP`,status:`LIVE`,statusClass:`text-violet`,blurb:`Everything I watch and read â scored, tagged, searchable.`,source:{kind:`local`,pathFilter:`src/app/routes/_app/media`},openHref:`/media`},{slug:`bio-log`,name:`Bio Log`,domain:`rose`,type:`LIVE APP`,status:`LIVE`,statusClass:`text-rose`,blurb:`Sleep, lifts, recovery â tracked without the wellness cult.`,source:{kind:`local`,pathFilter:`src/app/routes/_app/fitness`},openHref:`/fitness`}],k=Object.fromEntries(O.map(e=>[e.slug,e])),A={commits7d:151,streak:7,lastPush:`4m ago`,repos:6,tests:5858,totalCommits:1239},j=[{slug:`domdhi-platform`,commits:1239,lastPush:`4m ago`,log:[{time:`4m ago`,msg:`feat: wave 1 â WB-0.1, WB-0.2, WB-0.3, WB-0.4, WB-3.1 (workbench foundation)`},{time:`25m ago`,msg:`docs: add workbench memory decisions (embeddable calcs + honest stats)`},{time:`48m ago`,msg:`docs: /todo â create TODO for the-workbench (21 stories)`},{time:`16h ago`,msg:`docs: /do completion â security-audit-fixes + promote route-move gate memory`}],heat:[23,40,2,0,7,0,0,24,47,3,0,0,15,7,7,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,12,14,0,1,0,0,0,49,60,16,8,3,0,15,2,40,22,33,36,3]},{slug:`claude-code-tts`,commits:14,lastPush:`3mo ago`,log:[{time:`3mo ago`,msg:`chore: bump version to 2.4.0`},{time:`3mo ago`,msg:`fix: auto-restart stale daemon after reinstall`},{time:`3mo ago`,msg:`feat: session pool â auto-assign unique voices to multiple CC instances`},{time:`3mo ago`,msg:`feat: add 10 accent voices, Edge TTS passthrough, fix /voice stop`}],heat:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{slug:`domdhi-agents`,commits:832,lastPush:`2h ago`,log:[{time:`2h ago`,msg:`docs: /end â auto skill-improver on external ciso-nist-advisor (2 rounds, Î +14.6 then +62.5)`},{time:`2h ago`,msg:`feat: /review:evolve-skills â IMPROVE ciso-nist-advisor r2: bundle consolidated mapping (pass-rate Î +62.5 pts)`},{time:`3h ago`,msg:`feat: /review:evolve-skills â IMPROVE ciso-nist-advisor (external; pass-rate Î +14.6 pts)`},{time:`1d ago`,msg:`fix: handoff prune flat-glob footguns in /end + finishing-a-development-branch`}],heat:[0,0,0,0,0,0,0,0,0,0,0,0,0,3,54,38,0,0,0,0,0,19,69,55,25,0,0,44,3,0,0,0,0,0,0,0,0,0,0,0,0,0,13,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,21,17,63,54,42,0,12,0,0,0,47,47,0,0,0,0,0,33,68,0,1,0,3]},{slug:`domdhi-cockpit`,commits:null,lastPush:null,log:[],heat:null},{slug:`media-vault`,commits:9,lastPush:`9d ago`,log:[{time:`9d ago`,msg:`feat: wave 1 â T2-1.1, T2-1.2, T2-1.3, T2-2.1 (Agent-First tranche 2)`},{time:`10d ago`,msg:`feat: wave 2 â E04-S01/S03/S05/S06 nav sweep + redirects + logs SEO`},{time:`10d ago`,msg:`feat: wave 2 â E03-S02/S03/S04 public blog detail + domain log reconcile`},{time:`11d ago`,msg:`feat: wave 3 â DUP-3.1..3.13 (API + shouldRevalidate codemod sweeps)`}],heat:[0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,1,0,0,0,0,0,0,0,0,0,0]},{slug:`bio-log`,commits:11,lastPush:`9d ago`,log:[{time:`9d ago`,msg:`feat: wave 2 â T2-2.2 media-category API+MCP, T2-3.1 fitness data layer`},{time:`10d ago`,msg:`feat: wave 2 â E04-S01/S03/S05/S06 nav sweep + redirects + logs SEO`},{time:`11d ago`,msg:`feat: wave 3 â DUP-3.1..3.13 (API + shouldRevalidate codemod sweeps)`},{time:`11d ago`,msg:`feat: wave 2 â DUP-2.1..2.16 (clean migrations onto canonical helpers)`}],heat:[1,1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,0,0,0,0,0,0,0,0,0,0]}],M={emerald:`#00FF9F`,amber:`#FFB000`,cyan:`#00F0FF`,violet:`#BF40FF`,rose:`#FF0055`,amethyst:`#9D4EDD`},N={emerald:`text-emerald`,amber:`text-amber`,cyan:`text-cyan`,violet:`text-violet`,rose:`text-rose`,amethyst:`text-amethyst`},P=`focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst`;function F(e){if(!e||e.length===0)return[];let t=e.slice(-30),n=Math.max(...t);return n===0?[]:t.map(e=>Math.round(2+e/n*22))}function I(e,t){return e?e.startsWith(`http`)||t?e:`/login`:null}function L({project:e,data:t,isAuthenticated:n,isActive:r,onSelect:i}){let a=e.domain,o=M[a],s=N[a],c=I(e.openHref,n),l=c?.startsWith(`http`)??!1,u=F(t.heat),d=u.length>0,f=t.commits!==null,m=t.lastPush!==null,h=f||m?[f?`${t.commits}
1 commits`:null,m?t.lastPush:null].filter(Boolean).join(` · `):null;return(0,p.jsxs)(`article`,{className:[`group relative bg-[#080808] border p-[20px] flex flex-col gap-[10px] cursor-pointer`,`transition-[border-color,transform] duration-200`,`hover:-translate-y-[2px]`,r?``:`border-white/[0.08] hover:border-white/[0.18]`,P].join(` `),style:r?{borderColor:`${o}40`}:void 0,onClick:()=>i(e.slug),children:[(0,p.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.18em] uppercase ${s}`,children:e.type}),(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.12em] uppercase ${e.statusClass}`,children:e.status})]}),(0,p.jsx)(`button`,{type:`button`,onClick:()=>i(e.slug),className:`text-left font-display font-semibold text-[17px] leading-tight ${s} ${P} -mx-[20px] px-[20px] hover:underline decoration-current underline-offset-2`,"aria-label":`Open git history for ${e.name}`,"aria-pressed":r,children:e.name}),(0,p.jsx)(`p`,{className:`font-mono text-[11px] leading-[1.55] text-[#A1A1AA] flex-1`,children:e.blurb}),d&&(0,p.jsx)(`div`,{className:`flex items-end gap-[2px] h-[24px]`,"aria-hidden":`true`,title:`90-day activity`,children:u.map((e,t)=>(0,p.jsx)(`div`,{className:`flex-1 opacity-55`,style:{height:`${e}px`,backgroundColor:o}},t))}),(0,p.jsxs)(`div`,{className:`flex items-center justify-between gap-2 pt-[10px] border-t border-white/[0.07] mt-auto`,children:[h?(0,p.jsx)(`span`,{className:`font-mono text-[10px] text-[#52525b]`,children:h}):(0,p.jsx)(`span`,{className:`font-mono text-[10px] text-[#52525b] uppercase tracking-[0.1em]`,children:e.type}),c===null?(0,p.jsx)(`span`,{className:`font-mono text-[10px] tracking-[0.14em] text-[#52525b]`,"aria-label":`Private â no public link`,children:`[CLASSIFIED]`}):l?(0,p.jsx)(`a`,{href:c,target:`_blank`,rel:`noopener noreferrer`,className:`font-mono text-[10px] tracking-[0.14em] ${s} hover:opacity-80 transition-opacity no-underline ${P}`,"aria-label":`Open ${e.name} in GitHub`,onClick:e=>e.stopPropagation(),children:`OPEN â`}):(0,p.jsx)(`a`,{href:c,className:`font-mono text-[10px] tracking-[0.14em] ${s} hover:opacity-80 transition-opacity no-underline ${P}`,"aria-label":`Open ${e.name}`,onClick:e=>e.stopPropagation(),children:`OPEN â`})]}),r&&(0,p.jsx)(`span`,{className:`absolute top-[12px] right-[12px] w-[7px] h-[7px] rounded-full`,style:{backgroundColor:o,boxSh
1adow:`0 0 9px ${o}`},"aria-hidden":`true`})]})}var R={emerald:`#00FF9F`,amber:`#FFB000`,cyan:`#00F0FF`,violet:`#BF40FF`,rose:`#FF0055`,amethyst:`#9D4EDD`},z=`focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst`;function B({projects:e,activeSlug:t,onSelect:n,onClear:r}){return(0,p.jsxs)(`nav`,{"aria-label":`Projects`,className:`bg-void flex flex-col`,children:[(0,p.jsx)(`button`,{type:`button`,onClick:r,className:`text-left font-mono text-[10px] tracking-[0.18em] text-zinc-500 hover:text-white transition-colors px-[16px] py-[14px] border-b border-white/[0.07] ${z}`,children:`â // ALL WORK`}),(0,p.jsx)(`ul`,{className:`flex flex-col`,children:e.map(e=>{let r=e.slug===t,i=R[e.domain]??`#EDEDED`;return(0,p.jsx)(`li`,{children:(0,p.jsxs)(`button`,{type:`button`,"aria-current":r?!0:void 0,onClick:()=>n(e.slug),className:`w-full text-left flex items-center gap-[10px] px-[16px] py-[11px] border-b border-white/[0.07] transition-colors ${z} ${r?`bg-amethyst/[0.08]`:`hover:bg-white/[0.03]`}`,style:r?{borderLeft:`2px solid var(--color-amethyst)`}:{borderLeft:`2px solid transparent`},children:[(0,p.jsx)(`span`,{className:`w-[7px] h-[7px] rounded-full shrink-0`,style:{backgroundColor:i,boxShadow:`0 0 9px ${i}`}}),(0,p.jsx)(`span`,{className:`font-display font-semibold text-[12px] leading-tight ${r?`text-white`:`text-zinc-300`}`,children:e.name}),(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.1em] uppercase text-zinc-600 ml-auto shrink-0`,children:e.type})]})},e.slug)})})]})}function V(e,t){if(e===0)return .05;let n=e/t;return Math.min(100,Math.max(10,Math.round(n*10)*10))/100}function H({heat:e,accentHex:t}){if(e===null)return(0,p.jsx)(`p`,{className:`font-mono text-[10px] tracking-[0.14em] text-zinc-600 py-[10px]`,children:`No activity data`});let n=Math.max(...e,1);return(0,p.jsx)(`div`,{className:`grid gap-[3px]`,style:{gridTemplateColumns:`repeat(14, 1fr)`},"aria-label":`90-day commit activity heatmap`,role:`img`,children:e.map((e,r)=>(0,p.jsx)(`div`,{className:`aspect-square rounded-[1px]`,style:{backgroundColor:t,opacity:V(e,n)},"aria-hidden":`true`},r))})}var U={emerald:`#00FF9F`,amber:`#FFB000`,cyan:`#00F0FF`,violet:`#BF40FF`,amethyst:`#9D4EDD`,rose:`#FF0055`},W={emerald:`text-emerald`,amber:`text-amber`,cyan:`text-cyan`,violet:`text-violet`,amethyst:`text-amethyst`,rose:`text-rose`},G={emerald:`border-emerald`,amber:`border-amber`,cyan:`border-cyan`,violet:`border-violet`,amethyst:`border-amethyst`,rose:`border-rose`},K={emerald:`border-l-emerald`,amber:`border-l-amber`,cyan:`border-l-cyan`,violet:`border-l-violet`,amethyst:`border-l-amethyst`,rose:`border-l-rose`},q=`focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst`;function J(e,t,n){if(e===null)return null;if(e.startsWith(`http://`)||e.startsWith(`https://`))return{label:`GITHUB â`,href:e};let r=n?e:`/login`;return t===`LIVE APP`?{label:`VISIT â`,href:r}:{label:`OPEN â`,href:r}}function Y({project:e,data:t,isAuthenticated:r=!1,onClose:i}){let[,a]=n(),o=U[e.domain]??`#EDEDED`,s=W[e.domain]??`text-white`,c=G[e.domain]??`border-white`,l=K[e.domain]??`border-l-white`;function u(){i?i():a(e=>(e.delete(`repo`),e),{replace:!0,preventScrollReset:!0})}let d=J(e.openHref,e.type,r);return(0,p.jsxs)(`section`,{className:`border-l-2 ${l} bg-panel`,"aria-label":`${e.name} git history`,children:[(0,p.jsxs)(`div`,{className:`px-[20px] py-[18px] flex flex-col gap-[8px]`,style:{borderBottom:`1px solid rgba(255,255,255,0.07)`},children:[(0,p.jsxs)(`div`,{className:`flex items-center gap-[8px]`,children:[(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.2em] ${s} border ${c}/40 px-[6px] py-[2px]`,children:e.type}),(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.14em] ${e.statusClass}`,children:e.status})]}),(0,p.jsx)(`h3`,{className:`font-display font-semibold text-[22px] text-white leading-tight`,children:e.name}),(0,p.jsx)(`p`,{className:`font-mono text-[11px] text-zinc-500 leading-[1.55] max-w-[60ch]`,children:e.blurb}),(0,p.jsx)(`button`,{type:`button`,onClick:u,className:`self-start mt-[4px] font-mono text-[10px] tracking-[0.18em] text-zinc-500 hover:text-white transition-colors ${q}`,children:`â ALL WORK`})]}),(0,p.jsxs)(`div`,{className:`grid`,style:{gridTemplateColumns:`1fr 1.25fr`,gap:`1px`,background:`rgba(255,255,255,0.07)`},children:[(0,p.jsxs)(`div`,{className:`bg-void px-[20px] py-[20px] flex flex-col gap-[20px]`,children:[(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.25em] text-zinc-500`,children:`// MANIFEST`}),(0,p.jsxs)(`div`,{className:`flex flex-col gap-[16px]`,children:[t.commits!==null&&(0,p.jsxs)(`div`,{className:`flex flex-col gap-[4px]`,children:[(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.18em] text-zinc-600`,children:`COMMITS`}),(0,p.jsx)(`span`,{className:`font-display font-semibold text-[20px] text-white`,children:t.commits.toLocaleStr
1ing()})]}),t.lastPush!==null&&(0,p.jsxs)(`div`,{className:`flex flex-col gap-[4px]`,children:[(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.18em] text-zinc-600`,children:`LAST PUSH`}),(0,p.jsx)(`span`,{className:`font-display font-semibold text-[20px] ${s}`,children:t.lastPush})]}),(0,p.jsxs)(`div`,{className:`flex flex-col gap-[4px]`,children:[(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.18em] text-zinc-600`,children:`STATUS`}),(0,p.jsx)(`span`,{className:`font-display font-semibold text-[20px] ${e.statusClass}`,children:e.status})]})]}),d===null?(0,p.jsx)(`span`,{className:`inline-block self-start mt-auto font-mono text-[10px] tracking-[0.18em] text-zinc-600 border border-zinc-700/60 px-[12px] py-[6px] cursor-default`,"aria-label":`No public link available`,children:`[CLASSIFIED]`}):(0,p.jsx)(`a`,{href:d.href,className:`inline-block self-start mt-auto font-mono text-[10px] tracking-[0.18em] ${s} border ${c}/60 hover:${c} px-[12px] py-[6px] transition-colors no-underline ${q}`,...d.href.startsWith(`http`)?{target:`_blank`,rel:`noopener noreferrer`}:{},children:d.label})]}),(0,p.jsxs)(`div`,{className:`bg-void px-[20px] py-[20px] flex flex-col gap-[20px]`,children:[(0,p.jsxs)(`div`,{className:`flex items-center gap-[10px]`,children:[(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.25em] text-zinc-500`,children:`// COMMIT_STREAM`}),(0,p.jsxs)(`span`,{className:`flex items-center gap-[5px]`,children:[(0,p.jsx)(`span`,{className:`relative inline-flex w-[7px] h-[7px] rounded-full bg-emerald motion-reduce:animate-none`,"aria-hidden":`true`,children:(0,p.jsx)(`span`,{className:`absolute inline-flex h-full w-full rounded-full bg-emerald opacity-75 animate-ping motion-reduce:animate-none`})}),(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.18em] text-emerald`,children:`LIVE`})]})]}),(0,p.jsx)(`div`,{className:`flex flex-col`,children:t.log.length===0?(0,p.jsx)(`p`,{className:`font-mono text-[10px] tracking-[0.12em] text-zinc-600 py-[6px]`,children:`No recent commits`}):t.log.map((e,t)=>(0,p.jsxs)(`div`,{className:`grid items-start hover:text-white transition-colors group`,style:{gridTemplateColumns:`36px 1fr 7px`,gap:`0 8px`,paddingTop:`8px`,paddingBottom:`8px`,borderBottom:`1px solid rgba(255,255,255,0.07)`},children:[(0,p.jsx)(`span`,{className:`font-mono text-[9px] tracking-[0.1em] text-zinc-600 leading-[1.4] pt-[1px]`,children:e.time}),(0,p.jsx)(`span`,{className:`font-mono text-[10px] text-zinc-400 group-hover:text-white leading-[1.4] transition-colors break-words min-w-0`,children:e.msg}),(0,p.jsx)(`span`,{className:`w-[7px] h-[7px] rounded-full shrink-0 mt-[3px]`,style:{backgroundColor:o,boxSh
1adow:`0 0 5px ${o}`},"aria-hidden":`true`})]},t))}),(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`span`,{className:`block font-mono text-[9px] tracking-[0.25em] text-zinc-500 mb-[10px]`,children:`// 90-DAY ACTIVITY`}),(0,p.jsx)(H,{heat:t.heat,accentHex:o})]})]})]})]})}function X(e){let t={};for(let n of e)t[n.slug]=n;return t}var Z=X(j),Q={slug:``,commits:null,lastPush:null,log:[],heat:null};function $(){return O.length}function ee(){return A.lastPush||null}function te({isAuthenticated:e}){let[t,r]=n(),i=t.get(`repo`),a=i?k[i]:void 0,o=a?Z[a.slug]??{...Q,slug:a.slug}:void 0;function s(e){r(t=>(t.set(`repo`,e),t),{replace:!0,preventScrollReset:!0})}function c(){r(e=>(e.delete(`repo`),e),{replace:!0,preventScrollReset:!0})}let l=$(),u=ee();return(0,p.jsxs)(`section`,{className:`border-t border-white/[0.07] pt-[48px] pb-[52px]`,children:[(0,p.jsxs)(`div`,{className:`flex flex-wrap items-baseline justify-between gap-x-6 gap-y-2 mb-[20px]`,children:[(0,p.jsx)(`span`,{className:`font-mono text-[11px] tracking-[0.25em] text-[#EDEDED]`,children:`// MY WORK`}),(0,p.jsxs)(`span`,{className:`font-mono text-[10px] tracking-[0.14em] text-[#52525b]`,children:[`CLICK TO OPEN · `,l,` REPOS`,u?` · LAST PUSH ${u}`:``]})]}),a&&o?(0,p.jsxs)(`div`,{className:`grid grid-cols-1 min-[760px]:grid-cols-[268px_1fr] gap-px bg-white/[0.07] border border-white/[0.07]`,children:[(0,p.jsx)(B,{projects:O,activeSlug:a.slug,onSelect:s,onClear:c}),(0,p.jsx)(Y,{project:a,data:o,isAuthenticated:e,onClose:c})]}):(0,p.jsx)(`div`,{className:`grid grid-cols-1 min-[600px]:grid-cols-2 min-[900px]:grid-cols-3 gap-[14px]`,children:O.map(t=>(0,p.jsx)(L,{project:t,data:Z[t.slug]??{...Q,slug:t.slug},isAuthenticated:e,isActive:!1,onSelect:s},t.slug))})]})}var ne=()=>[{title:`The Workbench â Domdhi.OS`},{name:`description`,content:`The tools that run on this site, then the rest of what I've shipped. Run a calculator inline; open a project to see its real git history. No signup, no email wall.`}],re=l,ie=i(function({loaderData:e}){let{telemetry:t,isAuthenticated:n,prefill:r,runCounts:i}=e;return(0,p.jsx)(`div`,{className:`relative bg-dot-grid`,children:(0,p.jsxs)(`div`,{className:`max-w-[1180px] mx-auto px-6 sm:px-8`,children:[(0,p.jsx)(m,{}),(0,p.jsx)(g,{telemetry:t}),(0,p.jsx)(D,{prefill:r,runCounts:i}),(0,p.jsx)(te,{isAuthenticated:n}),(0,p.jsx)(c,{})]})})}),ae=e(function(){let e=t();return(0,p.jsxs)(`div`,{className:`max-w-[1180px] mx-auto px-6 py-16`,children:[(0,p.jsx)(`h1`,{className:`font-display font-bold text-2xl text-rose mb-4`,children:r(e)?s(e):`SYSTEM ERROR`}),(0,p.jsx)(`p`,{className:`text-gray-400 font-mono text-sm mb-6`,children:`Something went wrong loading the Workbench.`}),(0,p.jsx)(o,{to:`/builds`,variant:`outline`,accent:`amethyst`,children:`â RELOAD WORKBENCH`})]})});export{ae as ErrorBoundary,ie as default,ne as meta,re as shouldRevalidate};
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.