PageSourceSearch

https://www.arkade.games/assets/OpShell-Rm3OWDYX.js

js arkade.games collected 2026-10-05 23:04:29 UTC 22,579 bytes, 1 lines download raw bytes

1import{d as M,r as n,j as e,b as R,a as F,L as D,O as z}from"./react-vendor-BeNhjqeV.js";import{S as W,a as q,b as B,D as H,u as G}from"./ShellHeaderRight-DeScUHr2.js";import{t as Q}from"./toolNavIcons-BXHzMZ4y.js";import{L as U,ap as Y,a9 as J,O as V,s as _,bp as X,C as I,ar as Z,e as P,q as ee,j as te,aH as ae,aL as se,aM as oe,aN as re,aK as ne,aI as ie,aJ as le,aB as ce,br as de,bs as pe,bt as me}from"./index-BzPMbiYg.js";import{b as ue,h as he,c as fe,e as ge,d as xe,o as S,O as be,i as we,u as ke}from"./OpLayoutContext-CX5oW2aD.js";import{S as ve}from"./search-Bzs3UTwF.js";import{C as ye}from"./cpu-BsRUKMzC.js";import{T as je}from"./tag-DkpmPoMR.js";import{H as Ne}from"./hash-BKUXqTMw.js";import{C as Ce}from"./calendar-B9bBSuWv.js";import{S as Se}from"./square-check-big-Br7BGlJI.js";import{a as Le}from"./query-BbwQtxGU.js";import{W as Ee}from"./WorkspaceSwitcher-BEEBT1LL.js";import{g as Te}from"./gunny-idle-BzLznqnm.js";import{a as $}from"./gunny-voice-CIoBZ5Oi.js";import{r as K}from"./tool-paths-DRmmKbjQ.js";import{A as Oe}from"./align-justify-BQ7yTSS3.js";import{A as Ae}from"./align-left-B6IPzHXm.js";import"./tabs-DXA7M01_.js";import"./select-DvHpoVTw.js";import"./index-BdQq_4o_.js";import"./chevron-up-CWFIDYgU.js";import"./ReadFailureNotice-CtAgFpVY.js";import"./message-square-BrB9a00T.js";import"./user-plus-DVd_r8Wr.js";import"./pencil-BKxcpk37.js";import"./sliders-horizontal-BbjhfdQG.js";import"./trash-2-BD2QBB1r.js";import"./rotate-ccw-DgtzQ8cS.js";import"./settings-CUuPJadw.js";import"./user-round-DkJf2w3w.js";import"./type-CRl1YRnp.js";import"./house-CyBURNIB.js";import"./upload-B2PnVJak.js";import"./chart-column-CwhyXZJO.js";import"./workflow-6vb6yc_G.js";import"./megaphone-J6a20XHz.js";import"./list-checks-SRtycuNp.js";import"./bot-P2v6IfR1.js";import"./rocket-CSESctBI.js";import"./file-pen-line-B00OrCUh.js";import"./pen-line-D2EGS5PB.js";import"./file-text-DUsToiBd.js";import"./activity-DDpQ6m4k.js";import"./link-2-B1Rv81_f.js";import"./percent-DuYA7tWM.js";import"./package-DscYELOb.js";import"./shopping-cart-b5cm85of.js";import"./boxes-BSp6wRBk.js";import"./crosshair-CouE9Na3.js";import"./layers-G15pzn-L.js";import"./image-DZ7x5EdH.js";import"./palette-DRFSG6pf.js";import"./clipboard-list-BCy_K2HU.js";import"./trending-up-C2NQFKjm.js";import"./shield-check-BmdSuxd6.js";import"./dollar-sign-BFC_rKww.js";import"./layout-dashboard-nkue2fIp.js";import"./repeat-DbXuETvV.js";import"./target-Dd2ll5rK.js";import"./supabase-CjalFBeo.js";import"./brain-BS51mfd7.js";import"./handshake-io2ffrke.js";import"./newspaper-DEE4Zzou.js";const _e=[{label:"Task Manager",path:"/op/tasks",hint:"Home"},{label:"My Tasks",path:"/op/tasks",hint:"Tasks"},{label:"Calendar",path:"/op/calendar",hint:"Calendar"},{label:"Intake",path:"/op/intake",hint:"AI ingest"},{label:"Settings",path:"/op/tasks?settings=1",hint:"Global Settings"}];function Ie(){const s=M(),[p,i]=n.useState(!1),[o,g]=n.useState(""),[b,h]=n.useState(0),{data:c=[]}=ue(),{data:v=[]}=he(),{data:l=[]}=fe(),{data:f=[]}=ge(),{data:y=[]}=xe(),[k,d]=n.useState(!1),L=n.useRef(null);n.useEffect(()=>{const t=r=>{(r.metaKey||r.ctrlKey)&&r.key.toLowerCase()==="k"?(r.preventDefault(),i(u=>!u)):r.key==="Escape"&&p&&i(!1)};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[p]),n.useEffect(()=>{p&&(g(""),h(0),setTimeout(()=>{var t;return(t=L.current)==null?void 0:t.focus()},10))},[p]);const j=n.useMemo(()=>{var u,m,x;const t=o.trim().toLowerCase(),r=[];for(const w of _e)(!t||w.label.toLowerCase().includes(t))&&r.push({id:`page:${w.path}`,kind:"page",title:w.label,hint:w.hint,onSelect:()=>{s(w.path),i(!1)}});if(t.length>=1){const w=t.startsWith("@")?t.slice(1):t;for(const a of l)if(((u=a.name)!=null&&u.toLowerCase().includes(w)||(a.email||"").toLowerCase().includes(w))&&(r.push({id:`person:${a.id}`,kind:"person",title:a.name,hint:a.email||"",onSelect:()=>{s(`/op/tasks?tab=all&assignee=${a.id}`),i(!1)}}),r.length>60))break;const C=t.startsWith("#")?t.slice(1):t;for(const a of f)a.toLowerCase().includes(C)&&r.push({id:`tag:${a}`,kind:"tag",title:`#${a}`,hint:"Filter tasks",onSelect:()=>{s(`/op/tasks?tab=all&tag=${encodeURIComponent(a)}`),i(!1)}});const T=t.startsWith("&")?t.slice(1):t;for(const a of y)a.name.toLowerCase().includes(T)&&r.push({id:`cat:${a.id}`,kind:"category",title:`&${a.name}`,hint:"Filter category",onSelect:()=>{s(`/op/tasks?tab=all&cat=${encodeURIComponent(a.name)}`),i(!1)}});for(const a of c)(m=a.title)!=null&&m.toLowerCase().includes(t)&&r.push({id:`task:${a.id}`,kind:"task",title:a.title,hint:a.status==="done"?"✓ done":a.due_at?new Date(a.due_at).toLocaleDateString([],{month:"short",day:"numeric"}):a.priority,onSelect:()=>{s(`/op/tasks?tab=all&taskId=${a.id}`),i(!1)}});for(const a of v)(x=a.title)!=null&&x.toLowerCase().includes(t)&&r.push({id:`event:${a.id}`,kind:"event",title:a.title,hint:new Date(a.starts_at).toLocaleDateString([],{month:"short",day:"numeric"}),onSelect:()=>{s(`/op/calendar?event=${a.id}`),i(!1)}});r.push({id:"ai:askgod",kind:"ai",title:`Ask Ops God: "${o.trim()}"`,hint:"AI answer",onSelect:async()=>{d(!0);try{window.dispatchEvent(new CustomEvent("arkade-ai:ask",{detail:{question:o.trim()}})),i(!1)}finally{d(!1)}}})}return r},[o,c,v,l,f,y,s]);if(n.useEffect(()=>{b>=j.length&&h(0)},[j.length,b]),!p)return null;const N=t=>{var r;t.key==="ArrowDown"?(t.preventDefault(),h(u=>Math.min(u+1,j.length-1))):t.key==="ArrowUp"?(t.preventDefault(),h(u=>Math.max(u-1,0))):t.key==="Enter"&&(t.preventDefault(),(r=j[b])==null||r.onSelect())},E=t=>({task:e.jsx(Se,{className:"w-3.5 h-3.5"}),event:e.jsx(Ce,{className:"w-3.5 h-3.5"}),person:e.jsx(V,{className:"w-3.5 h-3.5"}),tag:e.jsx(Ne,{className:"w-3.5 h-3.5"}),category:e.jsx(je,{className:"w-3.5 h-3.5"}),page:e.jsx(J,{className:"w-3.5 h-3.5"}),intake:e.jsx(Y,{className:"w-3.5 h-3.5"}),ai:e.jsx(ye,{className:"w-3.5 h-3.5 text-accent"})})[t];return e.jsx("div",{className:"fixed inset-0 z-[200] bg-black/50 backdrop-blur-md flex items-start justify-center pt-[12vh] px-4 animate-in fade-in",onClick:()=>i(!1),children:e.jsxs("div",{className:"relative w-full max-w-xl bg-background/80 backdrop-blur-2xl border border-white/10 rounded-xl overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200",onClick:t=>t.stopPropagation(),children:[e.jsxs("div",{className:"flex items-center gap-3 px-4 py-3 border-b border-white/10 bg-arkade-darker/50",children:[e.jsx(ve,{className:"w-5 h-5 text-muted-foreground"}),e.jsx("input",{ref:L,value:o,onChange:t=>{g(t.target.value),h(0)},onKeyDown:N,"aria-label":"Command palette search",placeholder:"Search tasks, events, people, tags…  (⌘K)",className:"flex-1 bg-transparent outline-none font-mono text-sm placeholder:text-muted-foreground"}
1),k&&e.jsx(U,{className:"w-3.5 h-3.5 animate-spin text-accent"}),e.jsx("span",{className:"font-mono text-[9px] uppercase tracking-widest text-muted-foreground/60",children:"esc"})]}),e.jsx("div",{className:"max-h-[50vh] overflow-y-auto",children:j.length===0?e.jsx("div",{className:"px-4 py-6 font-mono text-[10px] uppercase tracking-widest text-muted-foreground/60 text-center",children:"Start typing… try @name, #tag, &category"}):e.jsx("ul",{children:j.map((t,r)=>e.jsx("li",{children:e.jsxs("button",{onMouseEnter:()=>h(r),onClick:()=>t.onSelect(),className:`w-full text-left px-3 py-2 flex items-center gap-2.5 ${r===b?"bg-accent/10 text-foreground":"text-foreground/80 hover:bg-white/5"}`,children:[e.jsx("span",{className:"text-muted-foreground",children:E(t.kind)}),e.jsx("span",{className:"flex-1 truncate text-xs",children:t.title}),t.hint&&e.jsx("span",{className:"font-mono text-[9px] uppercase tracking-widest text-muted-foreground/70 shrink-0",children:t.hint})]})},t.id))})}),e.jsxs("div",{className:"px-3 py-1.5 border-t border-white/10 flex items-center justify-between font-mono text-[9px] uppercase tracking-widest text-muted-foreground/60",children:[e.jsx("span",{children:"↑↓ navigate · ↵ open"}),e.jsx("span",{children:"⌘K to toggle"})]})]})})}const Me={op_tasks:S.tasks(),op_events:S.events(),op_people:S.people(),op_tags:S.tags(),op_categories_admin:S.categories()};function De({children:s}){const p=Le();return n.useEffect(()=>{const i=_.channel(X("op_workspace_rt"));return Object.entries(Me).forEach(([o,g])=>{i.on("postgres_changes",{event:"*",schema:"public",table:o},()=>p.invalidateQueries({queryKey:g}))}),["op_task_assignees","op_task_tags","op_event_tags"].forEach(o=>{i.on("postgres_changes",{event:"*",schema:"public",table:o},()=>p.invalidateQueries({queryKey:S.tasks()}))}),i.subscribe(),()=>{_.removeChannel(i)}},[p]),e.jsx(e.Fragment,{children:s})}const O=8;function $e({open:s,steps:p,onClose:i,onFinish:o,workspace:g="op"}){const b=M(),h=R(),[c,v]=n.useState(0),[l,f]=n.useState(null),y=n.useRef(null),k=n.useMemo(()=>p.filter(m=>!m.visible||m.visible()),[p]),d=k[c];if(n.useEffect(()=>{s&&v(0)},[s]),n.useEffect(()=>{!s||!d||d.route&&!h.pathname.startsWith(d.route)&&b(d.route)},[s,d,h.pathname,b]),n.useLayoutEffect(()=>{if(!s||!d)return;let m=0,x=0;const w=()=>{if(!d.target){f(null);return}const T=document.querySelector(d.target);if(T){const a=T.getBoundingClientRect();f(a),(a.top<80||a.bottom>window.innerHeight-80)&&T.scrollIntoView({block:"center",behavior:"smooth"})}else x<20?(x++,m=window.setTimeout(w,100)):f(null)};w();const C=()=>w();return window.addEventListener("resize",C),window.addEventListener("scroll",C,!0),()=>{window.removeEventListener("resize",C),window.removeEventListener("scroll",C,!0),window.clearTimeout(m)}},[s,d,h.pathname]),n.useEffect(()=>{if(!s)return;const m=x=>{x.key==="Escape"?i():x.key==="ArrowRight"||x.key==="Enter"?L():x.key==="ArrowLeft"&&j()};return window.addEventListener("keydown",m),()=>window.removeEventListener("keydown",m)}),!s||!d)return null;const L=()=>{c>=k.length-1?o():v(m=>m+1)},j=()=>v(m=>Math.max(0,m-1)),N=typeof window<"u"?window.innerWidth:1200,E=typeof window<"u"?window.innerHeight:800,t=l?{x:l.left-O,y:l.top-O,w:l.width+O*2,h:l.height+O*2}:null,r=360,u={position:"fixed",width:Math.min(r,N-24),zIndex:10001};if(!t||d.placement==="center")u.left=N/2-Math.min(r,N-24)/2,u.top=E/2-100;else{const m=d.placement||(t.y>E/2?"top":"bottom");m==="bottom"?(u.top=Math.min(E-220,t.y+t.h+12),u.left=Math.max(12,Math.min(N-r-12,t.x+t.w/2-r/2))):m==="top"?(u.top=Math.max(12,t.y-220),u.left=Math.max(12,Math.min(N-r-12,t.x+t.w/2-r/2))):m==="right"?(u.top=Math.max(12,t.y),u.left=Math.min(N-r-12,t.x+t.w+12)):(u.top=Math.max(12,t.y),u.left=Math.max(12,t.x-r-12))}return F.createPortal(e.jsxs("div",{className:"fixed inset-0 z-[10000]","aria-live":"polite",children:[e.jsxs("svg",{className:"absolute inset-0 w-full h-full pointer-events-auto",onClick:i,children:[e.jsx("defs",{children:e.jsxs("mask",{id:"op-tour-mask",children:[e.jsx("rect",{width:"100%",height:"100%",fill:"white"}),t&&e.jsx("rect",{x:t.x,y:t.y,width:t.w,height:t.h,rx:8,ry:8,fill:"black"})]})}),e.jsx("rect",{width:"100%",height:"100%",fill:"rgba(0,0,0,0.72)",mask:"url(#op-tour-mask)"}),t&&e.jsx("rect",{x:t.x,y:t.y,width:t.w,height:t.h,rx:8,ry:8,fill:"none",stroke:"hsl(var(--accent))",strokeWidth:1.5,strokeDasharray:"4 4",style:{pointerEvents:"none"}})]}),e.jsxs("div",{ref:y,style:u,role:"dialog","aria-modal":"true","aria-labelledby":"op-tour-title","aria-describedby":"op-tour-body",className:"relative bg-arkade-darker/95 backdrop-blur-xl border border-white/15 p-5 shadow-2xl rounded-md text-foreground",onClick:m=>m.stopPropagation(),children:[e.jsx(I,{orange:!0}),e.jsxs("div",{className:"flex items-center justify-between mb-3",children:[e.jsxs("span",{className:"font-mono text-[11px] font-semibold uppercase tracking-[0.2em] text-accent flex items-center gap-2",children:[e.jsx("img",{src:Te,alt:"",className:"w-5 h-5 object-contain gunny-jiggle",style:{filter:"drop-shadow(0 0 4px hsl(var(--accent) / 0.5))"}}),"Gunny says · ",c+1,"/",k.length]}),e.jsx("button",{onClick:i,"aria-label":"Close walkthrough",className:"h-8 w-8 -mr-1 flex items-center justify-center rounded-sm text-muted-foreground hover:text-foreground hover:bg-white/5 focus:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:e.jsx(Z,{className:"w-4 h-4"})})]}),e.jsx("h3",{id:"op-tour-title",style:{fontFamily:"'Hurme Geometric Sans', system-ui, sans-serif",fontWeight:900},className:"text-xl uppercase tracking-wide leading-tight mb-2 text-foreground",children:d.title}),e.jsxs("p",{id:"op-tour-body",style:{fontFamily:"'Hurme Geometric Sans', system-ui, sans-serif"}
1,className:"text-sm leading-relaxed text-foreground/90 italic",children:["“",$(g,c,d.body).gunny,"”"]}),e.jsx("p",{style:{fontFamily:"'Hurme Geometric Sans', system-ui, sans-serif"},className:"text-[11px] leading-relaxed text-muted-foreground mt-2",children:$(g,c,d.body).plain===d.body?null:d.body}),e.jsx("div",{className:"flex items-center gap-1.5 mt-4","aria-hidden":!0,children:k.map((m,x)=>e.jsx("span",{className:P("h-1 rounded-full transition-all",x===c?"w-6 bg-accent":x<c?"w-1.5 bg-accent/60":"w-1.5 bg-white/20")},x))}),e.jsxs("div",{className:"flex items-center justify-between mt-4 gap-2",children:[e.jsx("button",{onClick:i,className:"h-9 px-2 font-mono text-[11px] uppercase tracking-widest text-muted-foreground hover:text-foreground rounded-sm focus:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:"Skip tour"}),e.jsxs("div",{className:"flex items-center gap-2",children:[c>0&&e.jsxs("button",{onClick:j,"aria-label":"Previous step",className:"h-9 px-3 font-mono text-[11px] font-semibold uppercase tracking-widest border border-white/15 hover:bg-white/5 rounded-sm flex items-center gap-1 focus:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:[e.jsx(ee,{className:"w-3.5 h-3.5","aria-hidden":!0})," Back"]}),e.jsxs("button",{onClick:L,"aria-label":c>=k.length-1?"Finish walkthrough":"Next step",className:"h-9 px-4 bg-accent text-accent-foreground hover:bg-accent/90 font-mono text-[11px] font-semibold uppercase tracking-widest rounded-sm flex items-center gap-1 focus:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-arkade-darker",children:[c>=k.length-1?"Finish":"Next",c<k.length-1&&e.jsx(te,{className:"w-3.5 h-3.5","aria-hidden":!0})]})]})]})]})]}),document.body)}const A="op.tour.v1.completed";function Re(){const[s,p]=n.useState(()=>{if(typeof window>"u")return!0;try{return localStorage.getItem(A)==="1"}catch{return!1}}),[i,o]=n.useState(!1);n.useEffect(()=>{try{p(localStorage.getItem(A)==="1")}catch{}},[]);const g=n.useCallback(()=>o(!0),[]),b=n.useCallback(()=>{try{localStorage.setItem(A,"1")}catch{}p(!0),o(!1)},[]),h=n.useCallback(()=>{try{localStorage.removeItem(A)}catch{}p(!1),o(!0)},[]);return{completed:s,open:i,start:g,finish:b,reset:h,setOpen:o}}const Pe=typeof window<"u"?window.__opCtx||(window.__opCtx={}):{};function Ke(){const{density:s,toggleDensity:p}=ke();return e.jsxs(de,{children:[e.jsx(pe,{asChild:!0,children:e.jsx("button",{onClick:p,"aria-label":"Toggle density",className:"h-8 w-8 flex items-center justify-center text-muted-foreground hover:text-accent hover:bg-white/10 rounded-full transition-all",children:s==="compact"?e.jsx(Oe,{className:"w-4 h-4"}):e.jsx(Ae,{className:"w-4 h-4"})})}),e.jsxs(me,{side:"bottom",children:["Density · ",s]})]})}function Fe(){const s=K("/tools/ops","/op"),p=M(),i=R(),[o,g]=n.useState(null),[b,h]=n.useState(!0);n.useEffect(()=>{let l=!1;return(async()=>{try{const f=await se();if(!f){l||h(!1);return}const{data:y}=await oe(_.rpc("tool_role",{_workspace:"op",_user_id:f.id}),{data:"none"}),k=y==="admin"?"admin":y==="general"?"user":"none";if(!l){const d={userId:f.id,email:f.email||"",role:k};g(d),Pe.value=d,h(!1)}}catch{l||g(null)}finally{l||h(!1)}})(),()=>{l=!0}},[]);const c=G();if(b)return e.jsx(re,{label:"Booting Operations"});if(!o||o.role==="none")return e.jsx("div",{className:"min-h-screen bg-background flex items-center justify-center p-6",children:e.jsxs("div",{className:"relative bg-arkade-darker/60 max-w-md w-full p-8 text-center space-y-3",children:[e.jsx(I,{orange:!0}),e.jsx("h1",{className:"font-display text-2xl uppercase tracking-wider",children:"No Operations Access"}),e.jsxs("p",{className:"font-mono text-[11px] uppercase tracking-widest text-muted-foreground",children:[(o==null?void 0:o.email)||"Your account"," is not enrolled in Operations. Ask an admin to grant access."]}),e.jsxs("button",{onClick:async()=>{await _.auth.signOut(),p("/")},className:"relative inline-flex items-center gap-2 px-4 py-2 bg-arkade-darker/70 hover:bg-accent/10 font-mono text-[11px] uppercase tracking-widest",children:[e.jsx(I,{})," ",e.jsx(ne,{className:"w-3.5 h-3.5"})," Sign out"]})]})});const v=[{label:"Tasks",hoverLabel:"Manager",href:`${s}/tasks`},{label:"Calendar",hoverLabel:"Timeline",href:`${s}/calendar`},{label:"Intake",hoverLabel:"Drop-in",href:`${s}/intake`},...o.role==="admin"?[{label:"Analytics",hoverLabel:"Metrics",href:`${s}/analytics`}]:[]];return e.jsx(De,{children:e.jsxs("div",{className:`min-h-screen text-foreground op-shell relative bg-background overflow-x-hidden ${c}`,children:[e.jsx(ie,{}),e.jsx("div",{className:"fixed inset-0 z-0 pointer-events-none","aria-hidden":!0,
1children:e.jsx(le,{})}),e.jsxs("header",{className:"fixed top-0 left-0 right-0 z-50 bg-background/50 backdrop-blur-xl border-b border-white/5 shadow-sm",children:[e.jsx("div",{className:"absolute top-0 left-0 right-0 h-px bg-gradient-to-r from-transparent via-primary/30 to-transparent"}),e.jsx("div",{className:"container mx-auto px-6 lg:px-12",children:e.jsxs("div",{className:"grid grid-cols-[auto_1fr_auto] items-center h-12 gap-3",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(D,{to:s,className:"flex items-center gap-3","aria-label":"Operations home",children:e.jsx("img",{src:ce,alt:"Arkade",className:"h-6 w-auto",draggable:!1,"data-arkade-logo":!0})}),e.jsx(Ee,{current:"op"})]}),e.jsx("nav",{className:"hidden lg:flex items-center justify-center gap-5 lg:gap-6 justify-self-center min-w-0","aria-label":"Operations navigation",children:v.map(l=>{const f=i.pathname.startsWith(l.href),y=`nav-${l.label.toLowerCase()}`;return e.jsxs("span",{"data-tour":y,className:"relative inline-flex items-center",children:[e.jsx(q,{label:l.label,to:l.href,Icon:Q(l.label),active:f}),f&&e.jsx("span",{"aria-hidden":"true",className:"pointer-events-none absolute -bottom-1 left-1/2 -translate-x-1/2 h-[2px] w-5 bg-accent rounded-full shadow-[0_0_8px_hsl(var(--accent)/0.7)]"})]},l.label)})}),e.jsx(B,{workspace:"op",email:o.email,role:o.role,onPrint:null,extras:e.jsx(Ke,{})})]})})]}),e.jsx("nav",{className:"lg:hidden fixed top-12 left-0 right-0 z-40 bg-background/70 backdrop-blur-md border-b border-border/20 overflow-x-auto","aria-label":"Operations navigation mobile",children:e.jsx("div",{className:"flex items-center gap-1 px-4 h-10 min-w-max",children:v.map(l=>{const f=i.pathname.startsWith(l.href);return e.jsx(D,{to:l.href,"data-tour-mobile":`nav-${l.label.toLowerCase()}`,className:P("relative px-3 py-1.5 rounded-full font-mono text-[11px] font-black tracking-[0.2em] uppercase transition-all",f?"text-accent bg-accent/10 ring-1 ring-accent/40":"text-muted-foreground hover:text-foreground"),children:l.label},l.label)})})}),e.jsx("main",{className:"relative z-10 max-w-7xl mx-auto px-6 pb-8 pt-[88px] lg:pt-[68px]",children:e.jsx(z,{context:o})}),e.jsx(H,{}),e.jsx(Ie,{}),e.jsx(We,{role:o.role})]})})}const ze=[{title:"Welcome to Operations",body:"60-second tour of how work flows through here: capture in Intake, manage in Tasks, plan in Calendar. Use ← → or Esc to skip.",placement:"center"},{target:'[data-tour="nav-intake"]',route:"/op/intake",title:"1. Intake — capture anything",body:"Every task starts here. Paste notes, drop files, or screenshot. The AI extracts tasks and events for you to approve.",placement:"bottom"},{target:'[data-tour="intake-input"]',route:"/op/intake",title:"Try it: assign yourself a task",body:'Type something like "Review Q3 roadmap by Friday — assign to me" then hit Process with AI. Or skip ahead — you can come back.',placement:"bottom"},{target:'[data-tour="nav-tasks"]',route:"/op/intake",title:"2. Tasks — your work, organized",body:"Approved items land here. Filter by tab (Assigned to me, Tracking, All) and search/filter to slice the list.",placement:"bottom"},{target:'[data-tour="workload"]',route:"/op/tasks",title:"Live team workload",body:"Admins see who's loaded with what. Click an avatar to filter the board to that person's queue.",placement:"bottom"},{target:'[data-tour="task-filters"]',route:"/op/tasks",title:"Filter & search",body:"Search, filter by category, priority, tags, or assignee. Tabs above split your list into Assigned, Tracking, and All.",placement:"bottom"},{target:'[data-tour="nav-calendar"]',route:"/op/tasks",title:"3. Calendar — when things happen",body:"Tasks with due dates and events plot here. Switch between month, agenda, kanban, gantt, and table modes.",placement:"bottom"},{target:'[data-tour="views-bar"]',route:"/op/calendar",title:"4. Custom views",body:"Filter the calendar exactly how you want — then save it as a view. Pin your favourites, share with the team, or keep them private.",placement:"bottom"},{target:'[data-tour="command-palette"]',title:"5. Jump anywhere — ⌘K",body:"The command palette finds tasks, events, people, and routes instantly. Get fluent with this one shortcut.",placement:"bottom"},{target:'[data-tour="nav-settings"]',title:"You're set",body:"Settings is where admins manage members, permissions, categories, and automated emails. Restart this tour any time from there.",placement:"bottom"}];function We({role:s}
1){const{open:p,completed:i,start:o,finish:g,setOpen:b}=Re();n.useEffect(()=>{if(!i){const c=setTimeout(()=>o(),800);return()=>clearTimeout(c)}},[i,o]),n.useEffect(()=>{const c=()=>o();return window.addEventListener("op:tour:start",c),window.addEventListener("tutorial:relaunch:op",c),()=>{window.removeEventListener("op:tour:start",c),window.removeEventListener("tutorial:relaunch:op",c)}},[o]);const h=ze.filter(c=>c.target!=='[data-tour="workload"]'||s==="admin");return e.jsx($e,{open:p,steps:h,onClose:()=>b(!1),onFinish:g,workspace:"op"})}function Zt(){const s=K("/tools/ops","/op");return e.jsx(ae,{title:"Operations · Restricted",subtitle:"The Operations workspace is for Arkade operatives only.",redirectPath:s,workspace:"op",children:e.jsx(be,{children:e.jsx(we,{children:e.jsx(W,{workspace:"op",children:e.jsx(Fe,{})})})})})}export{Pe as OpContext,Zt 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.