2 lines
8.6 KiB
JavaScript
2 lines
8.6 KiB
JavaScript
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{Di as t,an as n,un as r,wn as i}from"./control-ui-foundation-CeFMP1Ly.js";import{$t as a,An as o,Cn as s,Dn as c,Nn as l,On as u,Pn as d,Qt as f,an as p,bn as ee,en as m,fn as te,fs as ne,jn as h,kn as g,ms as _,sn as v,tn as y,vn as b,wn as x,xn as re}from"./control-ui-core-pH6nakZ-.js";import{$t as S,en as C}from"./control-ui-core-DGVkFhVB.js";import{Qn as w,Rn as T,bl as E,yl as ie}from"./control-ui-boot-Cdpgu1Gm.js";import{a as D,i as ae,r as O,t as k}from"./normalization-m-N_6hXH.js";function A(e){return ne(e,`Unknown workboard error.`)}function j(){return(j=e((()=>{_()})))()}async function M(e){let t=[],n=new Set,r=null;for(;;){let i=await e.request(`tasks.list`,{limit:q,...r?{cursor:r}:{}}),a=D(i);if(t.push(...a.tasks),!a.nextCursor||n.has(a.nextCursor))return t;n.add(a.nextCursor),r=a.nextCursor}}function N(e){return w(e.updatedAt)}function oe(e){let t=N(e);return t>0?t:void 0}function se(e){return n(e.updatedAt)}function P(e,t){return e?e===t||t.startsWith(`subagent:workboard-`)&&e.endsWith(`:${t}`):!1}function F(e,n){let r=t(n.taskId);if(r&&(e.taskId===r||e.id===r))return!0;let i=d(n),a=i?[e.sessionKey,e.childSessionKey,e.ownerKey].some(e=>P(e,i)):!1,o=l(n);return o&&e.runId===o&&!i||a}function I(e,n){let r=t(n.taskId);if(r)return e.taskId===r||e.id===r;let i=l(n);return i&&e.runId!==i?!1:F(e,n)}function L(e,n,r){let i=t(n.taskId);return i&&r.has(i)?F(e,n):I(e,n)}function R(e,t,n,r){let i=f(e);if(t.length<=n)return i[r]=0,[...t];let a=(i[r]??0)%t.length,o=Array.from({length:n},(e,n)=>t[(a+n)%t.length]).filter(e=>e!==void 0);return i[r]=(a+o.length)%t.length,o}function z(e,n,r,i){let a=[],o=new Set;for(let e of n){if(!x(e))continue;let n=r.get(e.id),s=n?L(n,e,i):!1,c;s&&n?c=n.taskId:s||(c=t(e.taskId)??void 0),!(c&&i.has(c))&&c&&!o.has(c)&&(o.add(c),a.push(c))}return R(e,a,J,`taskPollOffset`)}function B(e,n,r,i){let a=[],o=new Set,s=!1;for(let c of n){if(!x(c))continue;let n=r.get(c.id),l=t(c.taskId),u=!!(l&&!i.has(l))||(n?L(n,c,i):!1),p=d(c);if(!(c.status!==`running`||u||!p)){if(p.startsWith(`subagent:workboard-`)){if(!s){s=!0;let t=f(e).defaultTaskDiscoveryCursor;a.push(t?{cursor:t}:{})}}else o.has(p)||(o.add(p),a.push({sessionKey:p}))}}return R(e,a,Y,`taskDiscoveryOffset`)}function V(e,t){return e instanceof S&&e.gatewayCode===`INVALID_REQUEST`&&e.message===`task not found: ${t}`}async function H(e,t,n){let r=await Promise.allSettled([...t.map(async t=>{try{let n=await e.request(`tasks.get`,{taskId:t}),r=i(n)?E(n.task):null;return{tasks:r?[r]:[]}}catch(e){if(V(e,t))return{tasks:[],missingTaskId:t};throw e}}),...n.map(async t=>{let n=await e.request(`tasks.list`,{...t,limit:q}),r=D(n);return{tasks:r.tasks,...t.sessionKey?{}:{nextUnfilteredCursor:r.nextCursor??null}}})]),a=[],o=new Set,s,c=null;for(let e of r)e.status===`fulfilled`?(a.push(...e.value.tasks),`missingTaskId`in e.value&&e.value.missingTaskId&&o.add(e.value.missingTaskId),`nextUnfilteredCursor`in e.value&&(s=e.value.nextUnfilteredCursor)):c??=A(e.reason);return{tasks:a,missingTaskIds:o,nextUnfilteredCursor:s,error:c}}function U(e,t,n){if(!t)return;let r=e.get(t)??[];r.push(n),e.set(t,r)}function W(e){let t={byId:new Map,byRunId:new Map,bySessionKey:new Map};for(let n of e){U(t.byId,n.id,n),U(t.byId,n.taskId,n),U(t.byRunId,n.runId,n);for(let e of[n.sessionKey,n.childSessionKey,n.ownerKey]){U(t.bySessionKey,e,n);let r=e?.lastIndexOf(`:subagent:workboard-`)??-1;r>=0&&U(t.bySessionKey,e?.slice(r+1),n)}}return t}function G(e,n,r){let i=t(n.taskId);if(i){let t=null;for(let r of e.byId.get(i)??[])I(r,n)&&(!t||N(r)>N(t))&&(t=r);if(t||!r?.has(i))return t}let a=new Set,o=e=>{for(let t of e??[])a.add(t)};o(e.byRunId.get(l(n)??``)),o(e.bySessionKey.get(d(n)??``));let s=null;for(let e of a)F(e,n)&&(!s||N(e)>N(s))&&(s=e);return s}function ce(e,n,r,i,a=new Map,o=new Set,s=J){let c=W(r),l=[],u=new Set;for(let e of n){if(!x(e))continue;let n=a.get(e.id),r=n&&L(n,e,i)&&n?n.taskId:t(e.taskId);!r||u.has(r)||i.has(r)||o.has(r)||G(c,e,i)||(u.add(r),l.push(r))}return Number.isFinite(s)?R(e,l,s,`taskPollOffset`):l}function K(e,n,r={}){let i=new Map,a=W(n),o=new Set([...e.missingTaskIds,...r.missingTaskIds??[]]),s=e.cards.map(e=>{if(!x(e))return e;let n=t(e.taskId),r=G(a,e,o);if(!r)return e;i.set(e.id,r);let s=!!(n&&o.has(n))&&r.taskId!==n&&r.id!==n;return n&&!s&&o.delete(n),o.delete(r.taskId),e.taskId===r.taskId||s?e:{...e,taskId:r.taskId}}),c=new Set(s.map(e=>t(e.taskId)).filter(e=>!!e));e.cards=s,e.tasksByCardId=i,e.missingTaskIds=new Set([...o].filter(e=>c.has(e)))}var q,J,Y,X;function Z(){return(Z=e((()=>{r(),C(),T(),ie(),s(),j(),k(),m(),q=500,J=32,Y=4,X=[100,250,500]})))()}function le(e){let t=t=>i(e)&&Array.isArray(e[t])?e[t].length:0;return{started:t(`started`),failures:t(`startFailures`),promoted:t(`promoted`),blocked:t(`blocked`),reclaimed:t(`reclaimed`),orchestrated:t(`orchestrated`)}}async function ue(e){let t=a(e.host);if(!(!e.client||!b(t)||!t.draftTitle.trim()||t.dispatching||t.draftSaving)){y(e.host),t.draftSaving=!0,t.loading=!0,t.error=null,e.requestUpdate?.();try{let n=await e.client.request(`workboard.cards.create`,{...re(t),...h(t)});g(t,O(n)),o(t)}catch(e){t.error=A(e)}finally{t.draftSaving=!1,t.loading=!1,e.requestUpdate?.()}}}async function Q(e){let t=a(e.host);if(!t.editingCardId){await ue(e);return}if(!e.client||!b(t)||!t.draftTitle.trim()||t.dispatching||t.draftSaving||t.busyCardIds.has(t.editingCardId))return;let n=t.editingCardId,r=t.editingCardBase;if(!r||r.id!==n){t.error=`This card changed before editing began. Cancel and reopen it to continue.`,e.requestUpdate?.();return}y(e.host),t.draftSaving=!0,t.loading=!0,t.error=null,e.requestUpdate?.();try{let i=ee(t);if(Object.keys(i).length===0){o(t);return}let a=await e.client.request(`workboard.cards.update`,{id:n,expectedUpdatedAt:r.updatedAt,patch:i});g(t,O(a)),o(t)}catch(e){if(e instanceof S&&e.code===`workboard_conflict`&&i(e.details)&&e.details.type===`workboard_card_conflict`){let n=O(e.details);g(t,n),c(t,n),t.error=`${e.message} Your unsaved edits remain in the form.`}else t.error=A(e)}finally{t.draftSaving=!1,t.loading=!1,e.requestUpdate?.()}}async function de(e){let t=a(e.host),n=e.cardId??t.editingCardId,r=(e.body??t.draftCommentBody).trim();if(!(!n||!e.client||!b(t)||!r||t.dispatching||t.draftSaving||t.busyCardIds.has(n))){y(e.host),t.busyCardIds.add(n),t.error=null,e.requestUpdate?.();try{let i=await e.client.request(`workboard.cards.comment`,{id:n,body:r}),a=O(i);g(t,a),t.editingCardId===n&&t.editingCardBase?.id===n&&c(t,a),e.body===void 0?t.draftCommentBody=``:t.detailCardId===n&&(t.detailCommentBody=``)}catch(e){t.error=A(e)}finally{t.busyCardIds.delete(n),e.requestUpdate?.()}}}async function fe(e){let t=a(e.host);if(!(!e.client||!b(t)||t.dispatching||t.busyCardIds.has(e.cardId))){y(e.host),t.busyCardIds.add(e.cardId),t.error=null,e.requestUpdate?.();try{let n=await e.client.request(`workboard.cards.move`,{id:e.cardId,status:e.status,position:e.position});g(t,O(n))}catch(e){t.error=A(e)}finally{t.busyCardIds.delete(e.cardId),t.draggedCardId===e.cardId&&(t.draggedCardId=null),e.requestUpdate?.()}}}async function pe(e){let t=a(e.host);if(!(!e.client||!b(t)||t.dispatching||t.busyCardIds.has(e.cardId))){y(e.host),t.busyCardIds.add(e.cardId),t.error=null,e.requestUpdate?.();try{await e.client.request(`workboard.cards.delete`,{id:e.cardId}),t.cards=u(t.cards,e.cardId)}catch(e){t.error=A(e)}finally{t.busyCardIds.delete(e.cardId),e.requestUpdate?.()}}}async function me(e){let t=a(e.host);if(!(!e.client||!b(t)||t.dispatching||t.busyCardIds.has(e.cardId))){y(e.host),t.busyCardIds.add(e.cardId),t.error=null,e.requestUpdate?.();try{let n=await e.client.request(`workboard.cards.archive`,{id:e.cardId,archived:e.archived??!0});g(t,O(n))}catch(e){t.error=A(e)}finally{t.busyCardIds.delete(e.cardId),e.requestUpdate?.()}}}async function he(e){let t=a(e.host);if(!(!e.client||!b(t)||t.dispatching||te(t))){y(e.host),t.dispatching=!0,t.error=null,t.lastDispatchSummary=null,e.requestUpdate?.();try{let n=await e.client.request(`workboard.cards.dispatch`,h(t)),r=await e.client.request(`workboard.cards.list`,{}),i=ae(r);t.cards=i.cards,t.statuses=i.statuses,t.lastDispatchSummary=le(n),t.tasksByCardId=new Map,p(t,{host:e.host});try{K(t,await M(e.client)),v(t,!1,{host:e.host}),t.lifecycleTaskRefreshError=null,t.lastRefreshError=null}catch(n){v(t,!0,{host:e.host,requestUpdate:e.requestUpdate}),t.lastRefreshError=A(n)}t.loaded=b(t)}catch(e){t.error=A(e)}finally{t.dispatching=!1,e.requestUpdate?.()}}}function $(){return($=e((()=>{C(),s(),j(),k(),m(),Z()})))()}export{A as C,N as S,se as _,$ as a,L as b,X as c,Z as d,V as f,z as g,B as h,he as i,K as l,ce as m,me as n,fe as o,M as p,pe as r,Q as s,de as t,H as u,oe as v,j as w,P as x,F as y};
|
|
//# sourceMappingURL=mutations-BYbn2CZG.js.map
|