@minimalcorp/tsunagi 0.1.49 → 0.1.51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/apps/web/.next/BUILD_ID +1 -1
- package/.next/standalone/apps/web/.next/build-manifest.json +3 -3
- package/.next/standalone/apps/web/.next/prerender-manifest.json +3 -3
- package/.next/standalone/apps/web/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/index.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/index.rsc +3 -3
- package/.next/standalone/apps/web/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/.next/standalone/apps/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings.rsc +3 -3
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_full.segment.rsc +3 -3
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_index.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/settings.segments/settings.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/tasks/[id]/page.js.nft.json +1 -1
- package/.next/standalone/apps/web/.next/server/app/tasks/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0m9m3y5._.js +3 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0mo_9ei._.js +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/[root-of-the-server]__11y.qj~._.js +3 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0bru-z.._.js +3 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0ejfw_6._.js +3 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0g.cd6a._.js +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/apps_web_src_app_settings_page_tsx_0i6itlb._.js +3 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/apps_web_src_app_tasks_[id]_page_tsx_0jshsm2._.js +12 -12
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_102_61p._.js → node_modules_02g1ce1._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0_j5e9s._.js → node_modules_09jfkt3._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_1132ajp._.js → node_modules_0c2_xkv._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_05v_qny._.js → node_modules_0j9ao3l._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0mn5p-q._.js → node_modules_0k-a_k6._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0j-2rnz._.js → node_modules_0ne_55f._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0esrd80._.js → node_modules_0o9r9wn._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0bwy~wk._.js → node_modules_0wrve0t._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/middleware-build-manifest.js +3 -3
- package/.next/standalone/apps/web/.next/server/pages/404.html +1 -1
- package/.next/standalone/apps/web/.next/server/pages/500.html +1 -1
- package/.next/standalone/apps/web/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/apps/web/.next/static/chunks/008lct.76g--1.js +1 -0
- package/.next/standalone/apps/web/.next/static/chunks/0gpkw.1e6kcpn.js +1 -0
- package/.next/standalone/apps/web/.next/static/chunks/0k4w860cwzuyy.css +4 -0
- package/.next/standalone/apps/web/.next/static/chunks/0makl-d3f0_qh.js +2878 -0
- package/.next/standalone/apps/web/.next/static/chunks/{0hcpu00flu9x6.js → 0tcznr_934_ai.js} +1 -1
- package/.next/standalone/apps/web/.next/static/chunks/0v6gxm~ldhmma.js +1 -0
- package/.next/standalone/apps/web/.next/static/chunks/0wv-.6vqubfpy.js +23 -0
- package/.next/standalone/apps/web/.next/static/chunks/0xy-wfkab7_5n.js +7 -0
- package/.next/standalone/apps/web/package.json +3 -0
- package/.next/standalone/apps/web/public/vad/ort-wasm-simd-threaded.mjs +59 -0
- package/.next/standalone/apps/web/public/vad/ort-wasm-simd-threaded.wasm +0 -0
- package/.next/standalone/apps/web/public/vad/silero_vad_v5.onnx +0 -0
- package/.next/standalone/apps/web/public/vad/vad.worklet.bundle.min.js +1 -0
- package/dist/cli.js +0 -1
- package/dist/server/index.js +0 -5
- package/dist/server/lib/asr-models.d.ts +7 -0
- package/dist/server/lib/asr-models.js +51 -0
- package/dist/server/lib/process-port.js +1 -1
- package/dist/server/lib/voice-debug-log.d.ts +4 -4
- package/dist/server/lib/voice-debug-log.js +1 -1
- package/dist/server/lib/whisper-process.d.ts +19 -2
- package/dist/server/lib/whisper-process.js +123 -26
- package/dist/server/routes/whisper.js +39 -51
- package/dist/whisper-server/README.md +12 -4
- package/dist/whisper-server/download_model.py +8 -3
- package/dist/whisper-server/requirements.txt +1 -0
- package/dist/whisper-server/run.sh +7 -2
- package/dist/whisper-server/server.py +90 -17
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0m52zsj._.js +0 -3
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0_2b4wf._.js +0 -3
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0s18_3n._.js +0 -3
- package/.next/standalone/apps/web/.next/server/chunks/ssr/node_modules_0.lo~su._.js +0 -3
- package/.next/standalone/apps/web/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_0qttwc4._.js +0 -3
- package/.next/standalone/apps/web/.next/static/chunks/04g3fzo25y9_g.js +0 -23
- package/.next/standalone/apps/web/.next/static/chunks/06sk6d3k059.n.js +0 -1
- package/.next/standalone/apps/web/.next/static/chunks/0imnlpmbrdgiv.js +0 -5
- package/.next/standalone/apps/web/.next/static/chunks/0n.xodexdkf03.js +0 -1
- package/.next/standalone/apps/web/.next/static/chunks/0u-820sh7-.-1.js +0 -1
- package/.next/standalone/apps/web/.next/static/chunks/13~5_8644~sbn.css +0 -4
- package/dist/llm-server/README.md +0 -27
- package/dist/llm-server/download_model.py +0 -14
- package/dist/llm-server/requirements.txt +0 -2
- package/dist/llm-server/run.sh +0 -59
- package/dist/server/lib/llm-process.d.ts +0 -29
- package/dist/server/lib/llm-process.js +0 -261
- package/dist/server/routes/llm.d.ts +0 -2
- package/dist/server/routes/llm.js +0 -23
- /package/.next/standalone/apps/web/.next/static/{oezQccA9cBsGwIkuMGqIY → 1z7N6ZhcQwVJOkcsbIi4M}/_buildManifest.js +0 -0
- /package/.next/standalone/apps/web/.next/static/{oezQccA9cBsGwIkuMGqIY → 1z7N6ZhcQwVJOkcsbIi4M}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/apps/web/.next/static/{oezQccA9cBsGwIkuMGqIY → 1z7N6ZhcQwVJOkcsbIi4M}/_ssgManifest.js +0 -0
|
@@ -61,6 +61,6 @@ ${A.current.stack}
|
|
|
61
61
|
-moz-user-select: none;
|
|
62
62
|
-ms-user-select: none;
|
|
63
63
|
overflow-anchor: none;
|
|
64
|
-
`}}],"always"),resting:dm(f,"resting"),dragging:dm(f,"dragging"),dropAnimating:dm(f,"dropAnimating"),userCancel:dm(f,"userCancel")}},[w]),f=(0,U.useRef)(null),g=(0,U.useRef)(null),h=bk(by(a=>{let b=g.current;b||a9(),b.textContent=a}),[]),dn(()=>{(f.current||g.current)&&a9();let a=dq(z),b=dq(z);return f.current=a,g.current=b,a.setAttribute(`${dh}-always`,w),b.setAttribute(`${dh}-dynamic`,w),dp().appendChild(a),dp().appendChild(b),i(e.always),h(e.resting),()=>{let a=a=>{let b=a.current;b||a9(),dp().removeChild(b),a.current=null};a(f),a(g)}},[z,i=bk(a=>{let b=f.current;b||a9(),b.textContent=a},[]),h,e.always,e.resting,w]),j=bk(()=>h(e.dragging),[h,e.dragging]),k=bk(a=>{"DROP"===a?h(e.dropAnimating):h(e.userCancel)},[h,e.dropAnimating,e.userCancel]),bj(()=>({dragging:j,dropping:k,resting:l}),[j,k,l=bk(()=>{g.current&&h(e.resting)},[h,e.resting])])),I=bk(a=>{dV(B).dispatch(a)},[]),J=bj(()=>_({publishWhileDragging:cr,updateDroppableScroll:ct,updateDroppableIsEnabled:cu,updateDroppableIsCombineEnabled:cv,collectionStarting:cs},I),[I]),K=(m=bj(dv,[]),(0,U.useEffect)(()=>function(){m.clean()},[m]),m),L=bj(()=>{let a,b,c;return a=null,b=function({registry:a,callbacks:b}){let c=cZ(),d=null,e=()=>{d||(b.collectionStarting(),d=requestAnimationFrame(()=>{d=null,ck();let{additions:e,removals:f,modified:g}=c,h=Object.keys(e).map(b=>a.draggable.getById(b).getDimension(bl)).sort((a,b)=>a.descriptor.index-b.descriptor.index),i=Object.keys(g).map(b=>{let c=a.droppable.getById(b).callbacks.getScrollWhileDragging();return{droppableId:b,scroll:c}}),j={additions:h,removals:Object.keys(f),modified:i};c=cZ(),cl(),b.publish(j)}))};return{add:a=>{let b=a.descriptor.id;c.additions[b]=a,c.modified[a.descriptor.droppableId]=!0,c.removals[b]&&delete c.removals[b],e()},remove:a=>{let b=a.descriptor;c.removals[b.id]=!0,c.modified[b.droppableId]=!0,c.additions[b.id]&&delete c.additions[b.id],e()},stop:()=>{d&&(cancelAnimationFrame(d),d=null,c=cZ())}}}({callbacks:{publish:J.publishWhileDragging,collectionStarting:J.collectionStarting},registry:K}),c=c=>{a||a9();let d=a.critical.draggable;"ADDITION"===c.type&&c1(K,d,c.value)&&b.add(c.value),"REMOVAL"===c.type&&c1(K,d,c.value)&&b.remove(c.value)},{updateDroppableIsEnabled:(b,c)=>{K.droppable.exists(b)||a9(),a&&J.updateDroppableIsEnabled({id:b,isEnabled:c})},updateDroppableIsCombineEnabled:(b,c)=>{a&&(K.droppable.exists(b)||a9(),J.updateDroppableIsCombineEnabled({id:b,isCombineEnabled:c}))},scrollDroppable:(b,c)=>{a&&K.droppable.getById(b).callbacks.scroll(c)},updateDroppableScroll:(b,c)=>{a&&(K.droppable.exists(b)||a9(),J.updateDroppableScroll({id:b,newScroll:c}))},startPublishing:b=>{a&&a9();let d=K.draggable.getById(b.draggableId),e=K.droppable.getById(d.descriptor.droppableId),f={draggable:d.descriptor,droppable:e.descriptor};return a={critical:f,unsubscribe:K.subscribe(c)},(({critical:a,scrollOptions:b,registry:c})=>{let d,e,f,g,h,i;ck();let j=(d=cR(),e=c0(),f=d.y,g=d.x,i=(h=c_()).clientWidth,{frame:aU({top:f,left:g,right:g+i,bottom:f+h.clientHeight}),scroll:{initial:d,current:d,max:e,diff:{value:bl,displacement:bl}}}),k=j.scroll.current,l=a.droppable,m=c.droppable.getAllByType(l.type).map(a=>a.callbacks.getDimensionAndWatchScroll(k,b)),n={draggables:bA(c.draggable.getAllByType(a.draggable.type).map(a=>a.getDimension(k))),droppables:bz(m)};return cl(),{dimensions:n,critical:a,viewport:j}})({critical:f,registry:K,scrollOptions:b.scrollOptions})},stopPublishing:()=>{if(!a)return;b.stop();let c=a.critical.droppable;K.droppable.getAllByType(c.type).forEach(a=>a.callbacks.dragStopped()),a.unsubscribe(),a=null}}},[K,J]),M=bj(()=>(({scrollDroppable:a,scrollWindow:b,move:c,getAutoScrollerOptions:d})=>{let e=(({scrollWindow:a,scrollDroppable:b,getAutoScrollerOptions:c=()=>c5})=>{let d=a2(a),e=a2(b),f=null,g=a=>{f||a9();let{shouldUseTimeDampening:b,dragStartTime:g}=f;dg({state:a,scrollWindow:d,scrollDroppable:e,dragStartTime:g,shouldUseTimeDampening:b,getAutoScrollerOptions:c})};return{start:a=>{ck(),f&&a9();let b=Date.now(),d=!1,e=()=>{d=!0};dg({state:a,dragStartTime:0,shouldUseTimeDampening:!1,scrollWindow:e,scrollDroppable:e,getAutoScrollerOptions:c}),f={dragStartTime:b,shouldUseTimeDampening:d},cl(),d&&g(a)},stop:()=>{f&&(d.cancel(),e.cancel(),f=null)},scroll:g}})({scrollWindow:b,scrollDroppable:a,getAutoScrollerOptions:d}),f=(({move:a,scrollDroppable:b,scrollWindow:c})=>d=>{let e=d.scrollJumpRequest;if(!e)return;let f=b9(d.impact);f||a9();let g=((a,c)=>{let d;if(!df(a,c))return c;let e=(d=a.frame)&&df(a,c)?dc({current:d.scroll.current,max:d.scroll.max,change:c}):null;if(!e)return b(a.descriptor.id,c),null;let f=bn(c,e);return b(a.descriptor.id,f),bn(c,f)})(d.dimensions.droppables[f],e);if(!g)return;let h=d.viewport,i=((a,b,d)=>{if(!a||!de(b,d))return d;let e=((a,b)=>{if(!de(a,b))return null;let c=a.scroll.max;return dc({current:a.scroll.current,max:c,change:b})})(b,d);if(!e)return c(d),null;let f=bn(d,e);return c(f),bn(d,f)})(d.isWindowScrollAllowed,h,g);i&&a({client:bm(d.current.client.selection,i)})})({move:c,scrollWindow:b,scrollDroppable:a});return{scroll:a=>{d().disabled||"DRAGGING"!==a.phase||("FLUID"===a.movementMode?e.scroll(a):a.scrollJumpRequest&&f(a))},start:e.start,stop:e.stop}})({scrollWindow:c3,scrollDroppable:L.scrollDroppable,getAutoScrollerOptions:E,..._({move:cw},I)}),[L.scrollDroppable,I,E]),N=(n=(0,U.useRef)({}),o=(0,U.useRef)(null),p=(0,U.useRef)(null),q=(0,U.useRef)(!1),r=bk(function(a,b){let c={id:a,focus:b};return n.current[a]=c,function(){let b=n.current;b[a]!==c&&delete b[a]}},[]),s=bk(function(a){let b=du(w,a);b&&b!==document.activeElement&&b.focus()},[w]),t=bk(function(a,b){o.current===a&&(o.current=b)},[]),u=bk(function(){p.current||q.current&&(p.current=requestAnimationFrame(()=>{p.current=null;let a=o.current;a&&s(a)}))},[s]),v=bk(function(a){o.current=null;let b=document.activeElement;b&&b.getAttribute(di.draggableId)===a&&(o.current=a)},[]),dn(()=>(q.current=!0,function(){q.current=!1;let a=p.current;a&&cancelAnimationFrame(a)}),[]),bj(()=>({register:r,tryRecordFocus:v,tryRestoreFocusRecorded:u,tryShiftRecord:t}),[r,v,u,t])),O=bj(()=>(({dimensionMarshal:a,focusMarshal:b,styleMarshal:c,getResponders:d,announce:e,autoScroller:f})=>{let g,h,i,j,k,l;return function a(b,c,d){if("function"!=typeof b)throw Error(W(2));if("function"==typeof c&&"function"==typeof d||"function"==typeof d&&"function"==typeof arguments[3])throw Error(W(0));if("function"==typeof c&&void 0===d&&(d=c,c=void 0),void 0!==d){if("function"!=typeof d)throw Error(W(1));return d(a)(b,c)}let e=b,f=c,g=new Map,h=g,i=0,j=!1;function k(){h===g&&(h=new Map,g.forEach((a,b)=>{h.set(b,a)}))}function l(){if(j)throw Error(W(3));return f}function m(a){if("function"!=typeof a)throw Error(W(4));if(j)throw Error(W(5));let b=!0;k();let c=i++;return h.set(c,a),function(){if(b){if(j)throw Error(W(6));b=!1,k(),h.delete(c),g=null}}}function n(a){if(!function(a){if("object"!=typeof a||null===a)return!1;let b=a;for(;null!==Object.getPrototypeOf(b);)b=Object.getPrototypeOf(b);return Object.getPrototypeOf(a)===b||null===Object.getPrototypeOf(a)}(a))throw Error(W(7));if(void 0===a.type)throw Error(W(8));if("string"!=typeof a.type)throw Error(W(17));if(j)throw Error(W(9));try{j=!0,f=e(f,a)}finally{j=!1}return(g=h).forEach(a=>{a()}),a}return n({type:Z.INIT}),{dispatch:n,subscribe:m,getState:l,replaceReducer:function(a){if("function"!=typeof a)throw Error(W(10));e=a,n({type:Z.REPLACE})},[X]:function(){return{subscribe(a){if("object"!=typeof a||null===a)throw Error(W(11));function b(){a.next&&a.next(l())}return b(),{unsubscribe:m(b)}},[X](){return this}}}}}(cp,aa(function(...a){return b=>(c,d)=>{let e=b(c,d),f=()=>{throw Error(W(15))},g={getState:e.getState,dispatch:(a,...b)=>f(a,...b)};return f=aa(...a.map(a=>a(g)))(e.dispatch),{...e,dispatch:f}}}(()=>a=>b=>{cq(b,"INITIAL_PUBLISH")&&c.dragging(),cq(b,"DROP_ANIMATE")&&c.dropping(b.payload.completed.result.reason),(cq(b,"FLUSH")||cq(b,"DROP_COMPLETE"))&&c.resting(),a(b)},()=>b=>c=>{(cq(c,"DROP_COMPLETE")||cq(c,"FLUSH")||cq(c,"DROP_ANIMATE"))&&a.stopPublishing(),b(c)},({getState:b,dispatch:c})=>d=>e=>{if(!cq(e,"LIFT"))return void d(e);let{id:f,clientSelection:g,movementMode:h}=e.payload,i=b();"DROP_ANIMATING"===i.phase&&c(cC({completed:i.completed})),"IDLE"!==b().phase&&a9(),c(cB()),c({type:"BEFORE_INITIAL_CAPTURE",payload:{draggableId:f,movementMode:h}});let{critical:j,dimensions:k,viewport:l}=a.startPublishing({draggableId:f,scrollOptions:{shouldPublishImmediately:"SNAP"===h}});c({type:"INITIAL_PUBLISH",payload:{critical:j,dimensions:k,clientSelection:g,movementMode:h,viewport:l}})},cQ,cW,cX,cY,a=>b=>c=>{if(cq(c,"DROP_COMPLETE")||cq(c,"DROP_ANIMATE")||cq(c,"FLUSH")){f.stop(),b(c);return}if(cq(c,"INITIAL_PUBLISH")){b(c);let d=a.getState();"DRAGGING"!==d.phase&&a9(),f.start(d);return}b(c),f.scroll(a.getState())},cS,(g=!1,()=>a=>c=>{if(cq(c,"INITIAL_PUBLISH")){g=!0,b.tryRecordFocus(c.payload.critical.draggable.id),a(c),b.tryRestoreFocusRecorded();return}if(a(c),g){if(cq(c,"FLUSH")){g=!1,b.tryRestoreFocusRecorded();return}if(cq(c,"DROP_COMPLETE")){g=!1;let a=c.payload.completed.result;a.combine&&b.tryShiftRecord(a.draggableId,a.combine.draggableId),b.tryRestoreFocusRecorded()}}}),(h=[],i={add:a=>{let b=setTimeout(()=>(a=>{let b=h.findIndex(b=>b.timerId===a);-1===b&&a9();let[c]=h.splice(b,1);c.callback()})(b));h.push({timerId:b,callback:a})},flush:()=>{if(!h.length)return;let a=[...h];h.length=0,a.forEach(a=>{clearTimeout(a.timerId),a.callback()})}},j=null,l={beforeCapture:(a,b)=>{j&&a9(),cT("onBeforeCapture",()=>{let c=d().onBeforeCapture;c&&c({draggableId:a,mode:b})})},beforeStart:(a,b)=>{j&&a9(),cT("onBeforeDragStart",()=>{let c=d().onBeforeDragStart;c&&c(cU(a,b))})},start:(a,b)=>{j&&a9();let c=cU(a,b);j={mode:b,lastCritical:a,lastLocation:c.source,lastCombine:null},i.add(()=>{cT("onDragStart",()=>cV(d().onDragStart,c,e,bf))})},update:(a,b)=>{var c,f;let g=bE(b),h=bF(b);j||a9();let k=!((a,b)=>{if(a===b)return!0;let c=a.draggable.id===b.draggable.id&&a.draggable.droppableId===b.draggable.droppableId&&a.draggable.type===b.draggable.type&&a.draggable.index===b.draggable.index,d=a.droppable.id===b.droppable.id&&a.droppable.type===b.droppable.type;return c&&d})(a,j.lastCritical);k&&(j.lastCritical=a);let l=(c=j.lastLocation,(null!=c||null!=g)&&(null==c||null==g||c.droppableId!==g.droppableId||c.index!==g.index));l&&(j.lastLocation=g);let m=(f=j.lastCombine,(null!=f||null!=h)&&(null==f||null==h||f.draggableId!==h.draggableId||f.droppableId!==h.droppableId));if(m&&(j.lastCombine=h),!k&&!l&&!m)return;let n={...cU(a,j.mode),combine:h,destination:g};i.add(()=>{cT("onDragUpdate",()=>cV(d().onDragUpdate,n,e,bg))})},flush:()=>{j||a9(),i.flush()},drop:k=a=>{j||a9(),j=null,cT("onDragEnd",()=>cV(d().onDragEnd,a,e,bh))},abort:()=>{j&&k({...cU(j.lastCritical,j.mode),combine:null,destination:null,reason:"CANCEL"})}},a=>b=>c=>{if(cq(c,"BEFORE_INITIAL_CAPTURE"))return void l.beforeCapture(c.payload.draggableId,c.payload.movementMode);if(cq(c,"INITIAL_PUBLISH")){let a=c.payload.critical;l.beforeStart(a,c.payload.movementMode),b(c),l.start(a,c.payload.movementMode);return}if(cq(c,"DROP_COMPLETE")){let a=c.payload.completed.result;l.flush(),b(c),l.drop(a);return}if(b(c),cq(c,"FLUSH"))return void l.abort();let d=a.getState();"DRAGGING"===d.phase&&l.update(d.critical,d.impact)}))))})({announce:F,autoScroller:M,dimensionMarshal:L,focusMarshal:N,getResponders:D,styleMarshal:H}),[F,M,L,N,D,H]);B.current=O;let P=bk(()=>{let a=dV(B);"IDLE"!==a.getState().phase&&a.dispatch(cB())},[]),Q=bk(()=>{let a=dV(B).getState();return"DROP_ANIMATING"===a.phase||"IDLE"!==a.phase&&a.isDragging},[]);x(bj(()=>({isDragging:Q,tryAbort:P}),[Q,P]));let R=bk(a=>c2(dV(B).getState(),a),[]),S=bk(()=>ca(dV(B).getState()),[]),T=bj(()=>({marshal:L,focus:N,contextId:w,canLift:R,isMovementAllowed:S,dragHandleUsageInstructionsId:G,registry:K}),[w,L,G,N,R,S,K]);return!function({contextId:a,store:b,registry:c,customSensors:d,enableDefaultSensors:e}){let f=[...e?dU:[],...d||[]],g=(0,U.useState)(()=>(function(){let a=null;function b(){a||a9(),a=null}return{isClaimed:function(){return!!a},isActive:function(b){return b===a},claim:function(b){a&&a9();let c={abandon:b};return a=c,c},release:b,tryAbandon:function(){a&&(a.abandon(),b())}}})())[0],h=bk(function(a,b){dH(a)&&!dH(b)&&g.tryAbandon()},[g]);dn(function(){let a=b.getState();return b.subscribe(()=>{let c=b.getState();h(a,c),a=c})},[g,b,h]),dn(()=>g.tryAbandon,[g.tryAbandon]);let i=bk(a=>dT({lockAPI:g,registry:c,store:b,draggableId:a}),[g,c,b]),j=bk((d,e,f)=>(function({lockAPI:a,contextId:b,store:c,registry:d,draggableId:e,forceSensorStop:f,sourceEvent:g}){var h;let i,j;if(!dT({lockAPI:a,store:c,registry:d,draggableId:e}))return null;let k=d.draggable.getById(e),l=(h=k.descriptor.id,(i=dr(document,`[${dj.contextId}="${b}"]`).find(a=>a.getAttribute(dj.id)===h))&&dt(i)?i:null);if(!l||g&&!k.options.canDragInteractiveElements&&dt(j=g.target)&&function a(b,c){if(null==c)return!1;if(dP.includes(c.tagName.toLowerCase()))return!0;let d=c.getAttribute("contenteditable");return"true"===d||""===d||c!==b&&a(b,c.parentElement)}(l,j))return null;let m=a.claim(f||a6),n="PRE_DRAG";function o(){return k.options.shouldRespectForcePress}function p(){return a.isActive(m)}let q=(function(a,b){dS({expected:a,phase:n,isLockActive:p,shouldWarn:!0})&&c.dispatch(b())}).bind(null,"DRAGGING");function r(b){function d(){a.release(),n="COMPLETED"}function e(a,f={shouldBlockNextClick:!1}){b.cleanup(),f.shouldBlockNextClick&&setTimeout(a7(window,[{eventName:"click",fn:dR,options:{once:!0,passive:!1,capture:!0}}])),d(),c.dispatch(cD({reason:a}))}return"PRE_DRAG"!==n&&(d(),a9()),c.dispatch({type:"LIFT",payload:b.liftActionArgs}),n="DRAGGING",{isActive:()=>dS({expected:"DRAGGING",phase:n,isLockActive:p,shouldWarn:!1}),shouldRespectForcePress:o,drop:a=>e("DROP",a),cancel:a=>e("CANCEL",a),...b.actions}}return{isActive:()=>dS({expected:"PRE_DRAG",phase:n,isLockActive:p,shouldWarn:!1}),shouldRespectForcePress:o,fluidLift:function(a){let b=a2(a=>{q(()=>cw({client:a}))});return{...r({liftActionArgs:{id:e,clientSelection:a,movementMode:"FLUID"},cleanup:()=>b.cancel(),actions:{move:b}}),move:b}},snapLift:function(){return r({liftActionArgs:{id:e,clientSelection:aU(l.getBoundingClientRect()).center,movementMode:"SNAP"},cleanup:a6,actions:{moveUp:()=>q(cx),moveRight:()=>q(cz),moveDown:()=>q(cy),moveLeft:()=>q(cA)}})},abort:function(){dS({expected:"PRE_DRAG",phase:n,isLockActive:p,shouldWarn:!0})&&a.release()}}})({lockAPI:g,registry:c,contextId:a,store:b,draggableId:d,forceSensorStop:e||null,sourceEvent:f&&f.sourceEvent?f.sourceEvent:null}),[a,g,c,b]),k=bk(b=>{let c;return(c=function(a,b){let c=b.target;if(!(c instanceof ds(c).Element))return null;let d=`[${di.contextId}="${a}"]`,e=c.closest?c.closest(d):function a(b,c){return null==b?null:b[dQ](c)?b:a(b.parentElement,c)}(c,d);return e&&dt(e)?e:null}(a,b))?c.getAttribute(di.draggableId):null},[a]),l=bk(a=>{let b=c.draggable.findById(a);return b?b.options:null},[c.draggable]),m=bk(function(){g.isClaimed()&&(g.tryAbandon(),"IDLE"!==b.getState().phase&&b.dispatch(cB()))},[g,b]),n=bk(()=>g.isClaimed(),[g]),o=bj(()=>({canGetLock:i,tryGetLock:j,findClosestDraggableId:k,findOptionsForDraggable:l,tryReleaseLock:m,isLockClaimed:n}),[i,j,k,l,m,n]);dE(()=>{let a=dG(f);dF(()=>{a.current.length!==f.length&&a9(!1)})});for(let a=0;a<f.length;a++)f[a](o)}({contextId:w,store:O,registry:K,customSensors:y||null,enableDefaultSensors:!1!==a.enableDefaultSensors}),(0,U.useEffect)(()=>P,[P]),U.default.createElement(dB.Provider,{value:T},U.default.createElement(aR,{context:dw,store:O},a.children))}function dX(a){let b=U.default.useId(),c=a.dragHandleUsageInstructions||bb;return U.default.createElement(ba,null,d=>U.default.createElement(dW,{nonce:a.nonce,contextId:b,setCallbacks:d,dragHandleUsageInstructions:c,enableDefaultSensors:a.enableDefaultSensors,sensors:a.sensors,onBeforeCapture:a.onBeforeCapture,onBeforeDragStart:a.onBeforeDragStart,onDragStart:a.onDragStart,onDragUpdate:a.onDragUpdate,onDragEnd:a.onDragEnd,autoScrollerOptions:a.autoScrollerOptions},a.children))}var dY=U.default.createContext(null);function dZ(a){a&&dt(a)||a9()}function d$(a){let b=(0,U.useContext)(a);return b||a9(),b}function d_(a){a.preventDefault()}var d0=(a,b)=>a===b,d1=a=>{let{combine:b,destination:c}=a;return c?c.droppableId:b?b.droppableId:null};function d2(a=null){return{isDragging:!1,isDropAnimating:!1,isClone:!1,dropAnimation:null,mode:null,draggingOver:null,combineTargetFor:a,combineWith:null}}let d3={mapped:{type:"SECONDARY",offset:bl,combineTargetFor:null,shouldAnimateDisplacement:!0,snapshot:d2(null)}},d4=aQ(()=>{let a,b,c,d,e,f,g,h,i=(a=by((a,b)=>({x:a,y:b})),b=by((a,b,c=null,d=null,e=null)=>({isDragging:!0,isClone:b,isDropAnimating:!!e,dropAnimation:e,mode:a,draggingOver:c,combineWith:d,combineTargetFor:null})),c=by((a,c,d,e,f=null,g=null,h=null)=>({mapped:{type:"DRAGGING",dropping:null,draggingOver:f,combineWith:g,mode:c,offset:a,dimension:d,forceShouldAnimate:h,snapshot:b(c,e,f,g,null)}})),(d,e)=>{if(dH(d)){let b;if(d.critical.draggable.id!==e.draggableId)return null;let f=d.current.client.offset,g=d.dimensions.draggables[e.draggableId],h=b9(d.impact),i=(b=d.impact).at&&"COMBINE"===b.at.type?b.at.combine.draggableId:null,j=d.forceShouldAnimate;return c(a(f.x,f.y),d.movementMode,g,e.isClone,h,i,j)}if("DROP_ANIMATING"===d.phase){let a=d.completed;if(a.result.draggableId!==e.draggableId)return null;let c=e.isClone,f=d.dimensions.draggables[e.draggableId],g=a.result,h=g.mode,i=d1(g),j=g.combine?g.combine.draggableId:null,k={duration:d.dropDuration,curve:cF,moveTo:d.newHomeClientOffset,opacity:j?cG:null,scale:j?cI:null};return{mapped:{type:"DRAGGING",offset:d.newHomeClientOffset,dimension:f,dropping:k,draggingOver:i,combineWith:j,mode:h,forceShouldAnimate:null,snapshot:b(h,c,i,j,k)}}}return null}),j=(d=by((a,b)=>({x:a,y:b})),e=by(d2),f=by((a,b=null,c)=>({mapped:{type:"SECONDARY",offset:a,combineTargetFor:b,shouldAnimateDisplacement:c,snapshot:e(b)}})),g=a=>a?f(bl,a,!0):null,h=(a,b,c,e)=>{let h=c.displaced.visible[a],i=!!(e.inVirtualList&&e.effected[a]),j=bF(c),k=j&&j.draggableId===a?b:null;if(!h){if(!i)return g(k);if(c.displaced.invisible[a])return null;let b=bp(e.displacedBy.point);return f(d(b.x,b.y),k,!0)}if(i)return g(k);let l=c.displacedBy.point;return f(d(l.x,l.y),k,h.shouldAnimate)},(a,b)=>{if(dH(a))return a.critical.draggable.id===b.draggableId?null:h(b.draggableId,a.critical.draggable.id,a.impact,a.afterCritical);if("DROP_ANIMATING"===a.phase){let c=a.completed;return c.result.draggableId===b.draggableId?null:h(b.draggableId,c.result.draggableId,c.impact,c.afterCritical)}return null});return(a,b)=>i(a,b)||j(a,b)||d3},{dropAnimationFinished:cE},null,{context:dw,areStatePropsEqual:d0})(a=>{let b=(0,U.useRef)(null),c=bk((a=null)=>{b.current=a},[]),d=bk(()=>b.current,[]),{contextId:e,dragHandleUsageInstructionsId:f,registry:g}=d$(dB),{type:h,droppableId:i}=d$(dY),j=bj(()=>({id:a.draggableId,index:a.index,type:h,droppableId:i}),[a.draggableId,a.index,h,i]),{children:k,draggableId:l,isEnabled:m,shouldRespectForcePress:n,canDragInteractiveElements:o,isClone:p,mapped:q,dropAnimationFinished:r}=a;dF(()=>{let b=a.draggableId;b||a9(!1),"string"!=typeof b&&a9(!1),Number.isInteger(a.index)||a9(!1),"DRAGGING"!==a.mapped.type&&(dZ(d()),a.isEnabled&&(du(e,b)||a9(!1)))}),dE(()=>{let a=(0,U.useRef)(p);dF(()=>{p!==a.current&&a9(!1)},[p])}),p||function(a){let b=dA("draggable"),{descriptor:c,registry:d,getDraggableRef:e,canDragInteractiveElements:f,shouldRespectForcePress:g,isEnabled:h}=a,i=bj(()=>({canDragInteractiveElements:f,shouldRespectForcePress:g,isEnabled:h}),[f,h,g]),j=bk(a=>{let b=e();return b||a9(),function(a,b,c=bl){let d=window.getComputedStyle(b),e=a0(b.getBoundingClientRect(),d),f=a_(e,c),g={client:e,tagName:b.tagName.toLowerCase(),display:d.display};return{descriptor:a,placeholder:g,displaceBy:{x:e.marginBox.width,y:e.marginBox.height},client:e,page:f}}(c,b,a)},[c,e]),k=bj(()=>({uniqueId:b,descriptor:c,options:i,getDimension:j}),[c,j,i,b]),l=(0,U.useRef)(k),m=(0,U.useRef)(!0);dn(()=>(d.draggable.register(l.current),()=>d.draggable.unregister(l.current)),[d.draggable]),dn(()=>{if(m.current){m.current=!1;return}let a=l.current;l.current=k,d.draggable.update(k,a)},[k,d.draggable])}(bj(()=>({descriptor:j,registry:g,getDraggableRef:d,canDragInteractiveElements:o,shouldRespectForcePress:n,isEnabled:m}),[j,g,d,o,n,m]));let s=bj(()=>m?{tabIndex:0,role:"button","aria-describedby":f,"data-rfd-drag-handle-draggable-id":l,"data-rfd-drag-handle-context-id":e,draggable:!1,onDragStart:d_}:null,[e,f,l,m]),t=bk(a=>{"DRAGGING"===q.type&&q.dropping&&"transform"===a.propertyName&&(0,V.flushSync)(r)},[r,q]),u=bj(()=>{let a="DRAGGING"===q.type?function(a){let b=a.dimension.client,{offset:c,combineWith:d,dropping:e}=a,f=!!d,g=null!=a.forceShouldAnimate?a.forceShouldAnimate:"SNAP"===a.mode,h=!!e,i=h?((a,b)=>{let c=cM(a);if(c)return b?`${c} scale(${cI})`:c})(c,f):cM(c);return{position:"fixed",top:b.marginBox.top,left:b.marginBox.left,boxSizing:"border-box",width:b.borderBox.width,height:b.borderBox.height,transition:e?cL.drop(e.duration):g?cL.snap:cL.fluid,transform:i,opacity:((a,b)=>{if(a)return b?cG:cH})(f,h),zIndex:h?4500:5e3,pointerEvents:"none"}}(q):{transform:cM(q.offset),transition:q.shouldAnimateDisplacement?void 0:"none"};return{innerRef:c,draggableProps:{"data-rfd-draggable-context-id":e,"data-rfd-draggable-id":l,style:a,onTransitionEnd:"DRAGGING"===q.type&&q.dropping?t:void 0},dragHandleProps:s}},[e,s,l,q,t,c]),v=bj(()=>({draggableId:j.id,type:j.type,source:{index:j.index,droppableId:j.droppableId}}),[j.droppableId,j.id,j.index,j.type]);return U.default.createElement(U.default.Fragment,null,k(u,q.snapshot,v))});function d5(a){return d$(dY).isUsingCloneFor!==a.draggableId||a.isClone?U.default.createElement(d4,a):null}function d6(a){let b="boolean"!=typeof a.isDragDisabled||!a.isDragDisabled,c=!!a.disableInteractiveElementBlocking,d=!!a.shouldRespectForcePress;return U.default.createElement(d5,a3({},a,{isClone:!1,isEnabled:b,canDragInteractiveElements:c,shouldRespectForcePress:d}))}let d7=a=>b=>a===b,d8=d7("scroll"),d9=d7("auto");d7("visible");let ea=(a,b)=>b(a.overflowX)||b(a.overflowY),eb=a=>{let b,c;return null==a||a===document.body||a===document.documentElement?null:ea(c={overflowX:(b=window.getComputedStyle(a)).overflowX,overflowY:b.overflowY},d8)||ea(c,d9)?a:eb(a.parentElement)};var ec=a=>({x:a.scrollLeft,y:a.scrollTop});let ed=a=>!!a&&("fixed"===window.getComputedStyle(a).position||ed(a.parentElement)),ee={passive:!1},ef={passive:!0};var eg=a=>a.shouldPublishImmediately?ee:ef;let eh=a=>a&&a.env.closestScrollable||null;function ei(){}let ej={width:0,height:0,margin:{top:0,right:0,bottom:0,left:0}};var ek=U.default.memo(a=>{let b=(0,U.useRef)(null),c=bk(()=>{b.current&&(clearTimeout(b.current),b.current=null)},[]),{animate:d,onTransitionEnd:e,onClose:f,contextId:g}=a,[h,i]=(0,U.useState)("open"===a.animate);(0,U.useEffect)(()=>h?"open"!==d?(c(),i(!1),ei):b.current?ei:(b.current=setTimeout(()=>{b.current=null,i(!1)}),c):ei,[d,h,c]);let j=bk(a=>{"height"===a.propertyName&&(e(),"close"===d&&f())},[d,f,e]),k=(({isAnimatingOpenOnMount:a,placeholder:b,animate:c})=>{let d=(({isAnimatingOpenOnMount:a,placeholder:b,animate:c})=>a||"close"===c?ej:{height:b.client.borderBox.height,width:b.client.borderBox.width,margin:b.client.margin})({isAnimatingOpenOnMount:a,placeholder:b,animate:c});return{display:b.display,boxSizing:"border-box",width:d.width,height:d.height,marginTop:d.margin.top,marginRight:d.margin.right,marginBottom:d.margin.bottom,marginLeft:d.margin.left,flexShrink:"0",flexGrow:"0",pointerEvents:"none",transition:"none"!==c?cL.placeholder:null}})({isAnimatingOpenOnMount:h,animate:a.animate,placeholder:a.placeholder});return U.default.createElement(a.placeholder.tagName,{style:k,"data-rfd-placeholder-context-id":g,onTransitionEnd:j,ref:a.innerRef})});function el(a){return"boolean"==typeof a}function em(a,b){b.forEach(b=>b(a))}let en=[function({props:a}){a.droppableId||a9(),"string"!=typeof a.droppableId&&a9()},function({props:a}){el(a.isDropDisabled)||a9(),el(a.isCombineEnabled)||a9(),el(a.ignoreContainerClipping)||a9()},function({getDroppableRef:a}){dZ(a())}],eo=[function({props:a,getPlaceholderRef:b}){if(!a.placeholder||b())return}],ep=[function({props:a}){a.renderClone||a9()},function({getPlaceholderRef:a}){a()&&a9()}];class eq extends U.default.PureComponent{constructor(...a){super(...a),this.state={isVisible:!!this.props.on,data:this.props.on,animate:this.props.shouldAnimate&&this.props.on?"open":"none"},this.onClose=()=>{"close"===this.state.animate&&this.setState({isVisible:!1})}}static getDerivedStateFromProps(a,b){return a.shouldAnimate?a.on?{isVisible:!0,data:a.on,animate:"open"}:b.isVisible?{isVisible:!0,data:b.data,animate:"close"}:{isVisible:!1,animate:"close",data:null}:{isVisible:!!a.on,data:a.on,animate:"none"}}render(){if(!this.state.isVisible)return null;let a={onClose:this.onClose,data:this.state.data,animate:this.state.animate};return this.props.children(a)}}let er={mode:"standard",type:"DEFAULT",direction:"vertical",isDropDisabled:!1,isCombineEnabled:!1,ignoreContainerClipping:!1,renderClone:null,getContainerForClone:function(){return document.body||a9(),document.body}},es=a=>{let b,c={...a};for(b in er)void 0===a[b]&&(c={...c,[b]:er[b]});return c},et=(a,b)=>b.draggables[a.draggable.id],eu=aQ(()=>{let a={placeholder:null,shouldAnimatePlaceholder:!0,snapshot:{isDraggingOver:!1,draggingOverWith:null,draggingFromThisWith:null,isUsingPlaceholder:!1},useClone:null},b={...a,shouldAnimatePlaceholder:!1},c=by(a=>({draggableId:a.id,type:a.type,source:{index:a.index,droppableId:a.droppableId}})),d=by((d,e,f,g,h,i)=>{let j=h.descriptor.id;if(h.descriptor.droppableId===d){let a=i?{render:i,dragging:c(h.descriptor)}:null;return{placeholder:h.placeholder,shouldAnimatePlaceholder:!1,snapshot:{isDraggingOver:f,draggingOverWith:f?j:null,draggingFromThisWith:j,isUsingPlaceholder:!0},useClone:a}}return e?g?{placeholder:h.placeholder,shouldAnimatePlaceholder:!0,snapshot:{isDraggingOver:f,draggingOverWith:j,draggingFromThisWith:null,isUsingPlaceholder:!0},useClone:null}:a:b});return(c,e)=>{let f=es(e),g=f.droppableId,h=f.type,i=!f.isDropDisabled,j=f.renderClone;if(dH(c)){let a=c.critical;if(h!==a.droppable.type)return b;let e=et(a,c.dimensions),f=b9(c.impact)===g;return d(g,i,f,f,e,j)}if("DROP_ANIMATING"===c.phase){let a=c.completed;if(h!==a.critical.droppable.type)return b;let e=et(a.critical,c.dimensions);return d(g,i,d1(a.result)===g,b9(a.impact)===g,e,j)}if("IDLE"===c.phase&&c.completed&&!c.shouldFlush){let d=c.completed;if(h!==d.critical.droppable.type)return b;let e=b9(d.impact)===g,f=!!(d.impact.at&&"COMBINE"===d.impact.at.type),i=d.critical.droppable.id===g;if(e)return f?a:b;if(i)return a}return b}},{updateViewportMaxScroll:a=>({type:"UPDATE_VIEWPORT_MAX_SCROLL",payload:a})},(a,b,c)=>({...es(c),...a,...b}),{context:dw,areStatePropsEqual:d0})(a=>{var b;let c=(0,U.useContext)(dB);c||a9();let{contextId:d,isMovementAllowed:e}=c,f=(0,U.useRef)(null),g=(0,U.useRef)(null),{children:h,droppableId:i,type:j,mode:k,direction:l,ignoreContainerClipping:m,isDropDisabled:n,isCombineEnabled:o,snapshot:p,useClone:q,updateViewportMaxScroll:r,getContainerForClone:s}=a,t=bk(()=>f.current,[]),u=bk((a=null)=>{f.current=a},[]),v=bk(()=>g.current,[]),w=bk((a=null)=>{g.current=a},[]);b={props:a,getDroppableRef:t,getPlaceholderRef:v},dF(()=>{em(b,en),"standard"===b.props.mode&&em(b,eo),"virtual"===b.props.mode&&em(b,ep)});let x=bk(()=>{e()&&r({maxScroll:c0()})},[e,r]);!function(a){let b=(0,U.useRef)(null),c=d$(dB),d=dA("droppable"),{registry:e,marshal:f}=c,g=dG(a),h=bj(()=>({id:a.droppableId,type:a.type,mode:a.mode}),[a.droppableId,a.mode,a.type]),i=(0,U.useRef)(h),j=bj(()=>by((a,c)=>{b.current||a9(),f.updateDroppableScroll(h.id,{x:a,y:c})}),[h.id,f]),k=bk(()=>{let a=b.current;return a&&a.env.closestScrollable?ec(a.env.closestScrollable):bl},[]),l=bk(()=>{let a=k();j(a.x,a.y)},[k,j]),m=bj(()=>a2(l),[l]),n=bk(()=>{let a=b.current,c=eh(a);(a&&c||a9(),a.scrollOptions.shouldPublishImmediately)?l():m()},[m,l]),o=bk((a,d)=>{b.current&&a9();let e=g.current,f=e.getDroppableRef();f||a9();let i={closestScrollable:eb(f),isFixedOnPage:ed(f)},j={ref:f,descriptor:h,env:i,scrollOptions:d};b.current=j;let k=(({ref:a,descriptor:b,env:c,windowScroll:d,direction:e,isDropDisabled:f,isCombineEnabled:g,shouldClipSubject:h})=>{let i=c.closestScrollable,j=((a,b)=>{let c=a1(a);if(!b||a!==b)return c;let d=c.paddingBox.top-b.scrollTop,e=c.paddingBox.left-b.scrollLeft,f=d+b.scrollHeight;return aY({borderBox:aV({top:d,right:e+b.scrollWidth,bottom:f,left:e},c.border),margin:c.margin,border:c.border,padding:c.padding})})(a,i),k=a_(j,d),l=(()=>{if(!i)return null;let a=a1(i),b={scrollHeight:i.scrollHeight,scrollWidth:i.scrollWidth};return{client:a,page:a_(a,d),scroll:ec(i),scrollSize:b,shouldClipSubject:h}})();return(({descriptor:a,isEnabled:b,isCombineEnabled:c,isFixedOnPage:d,direction:e,client:f,page:g,closest:h})=>{let i=(()=>{if(!h)return null;let{scrollSize:a,client:b}=h,c=c$({scrollHeight:a.scrollHeight,scrollWidth:a.scrollWidth,height:b.paddingBox.height,width:b.paddingBox.width});return{pageMarginBox:h.page.marginBox,frameClient:b,scrollSize:a,shouldClipSubject:h.shouldClipSubject,scroll:{initial:h.scroll,current:h.scroll,max:c,diff:{value:bl,displacement:bl}}}})(),j="vertical"===e?bO:bP,k=bw({page:g,withPlaceholder:null,axis:j,frame:i});return{descriptor:a,isCombineEnabled:c,isFixedOnPage:d,axis:j,isEnabled:b,client:f,page:g,frame:i,subject:k}})({descriptor:b,isEnabled:!f,isCombineEnabled:g,isFixedOnPage:c.isFixedOnPage,direction:e,client:j,page:k,closest:l})})({ref:f,descriptor:h,env:i,windowScroll:a,direction:e.direction,isDropDisabled:e.isDropDisabled,isCombineEnabled:e.isCombineEnabled,shouldClipSubject:!e.ignoreContainerClipping}),l=i.closestScrollable;return l&&(l.setAttribute(dl.contextId,c.contextId),l.addEventListener("scroll",n,eg(j.scrollOptions))),k},[c.contextId,h,n,g]),p=bk(()=>{let a=b.current,c=eh(a);return a&&c||a9(),ec(c)},[]),q=bk(()=>{let a=b.current;a||a9();let c=eh(a);b.current=null,c&&(m.cancel(),c.removeAttribute(dl.contextId),c.removeEventListener("scroll",n,eg(a.scrollOptions)))},[n,m]),r=bk(a=>{let c=b.current;c||a9();let d=eh(c);d||a9(),d.scrollTop+=a.y,d.scrollLeft+=a.x},[]),s=bj(()=>({getDimensionAndWatchScroll:o,getScrollWhileDragging:p,dragStopped:q,scroll:r}),[q,o,p,r]),t=bj(()=>({uniqueId:d,descriptor:h,callbacks:s}),[s,h,d]);dn(()=>(i.current=t.descriptor,e.droppable.register(t),()=>{b.current&&q(),e.droppable.unregister(t)}),[s,h,q,t,f,e.droppable]),dn(()=>{b.current&&f.updateDroppableIsEnabled(i.current.id,!a.isDropDisabled)},[a.isDropDisabled,f]),dn(()=>{b.current&&f.updateDroppableIsCombineEnabled(i.current.id,a.isCombineEnabled)},[a.isCombineEnabled,f])}({droppableId:i,type:j,mode:k,direction:l,isDropDisabled:n,isCombineEnabled:o,ignoreContainerClipping:m,getDroppableRef:t});let y=bj(()=>U.default.createElement(eq,{on:a.placeholder,shouldAnimate:a.shouldAnimatePlaceholder},({onClose:a,data:b,animate:c})=>U.default.createElement(ek,{placeholder:b,onClose:a,innerRef:w,animate:c,contextId:d,onTransitionEnd:x})),[d,x,a.placeholder,a.shouldAnimatePlaceholder,w]),z=bj(()=>({innerRef:u,placeholder:y,droppableProps:{"data-rfd-droppable-id":i,"data-rfd-droppable-context-id":d}}),[d,i,y,u]),A=q?q.dragging.draggableId:null,B=bj(()=>({droppableId:i,type:j,isUsingCloneFor:A}),[i,A,j]);return U.default.createElement(dY.Provider,{value:B},h(z,p),function(){if(!q)return null;let{dragging:a,render:b}=q,c=U.default.createElement(d5,{draggableId:a.draggableId,index:a.source.index,isClone:!0,isEnabled:!0,shouldRespectForcePress:!1,canDragInteractiveElements:!0},(c,d)=>b(c,d,a));return V.default.createPortal(c,s())}())});var ev=a.i(5151),ew=a.i(10948);let ex=(0,k.default)("clock",[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);var ey=a.i(96221),ez=a.i(63588),eA=a.i(67453),eB=a.i(62722),eC=a.i(11081),eD=a.i(65025),eE=a.i(92005);let eF={backlog:"bg-muted text-muted-foreground",planning:"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300",coding:"bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-300",reviewing:"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-300",done:"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-300"},eG={success:{className:"bg-unread-success",label:"Finished, not opened yet"},error:{className:"bg-unread-error",label:"Failed, not opened yet"},waiting:{className:"bg-unread-waiting",label:"Waiting for your input"}};function eH({tabs:a}){if(!a||0===a.length)return null;let b=a.some(a=>"running"===a.status),c=a.some(a=>"waiting"===a.status),d=a.some(a=>"error"===a.status),e=a.length>0&&a.every(a=>"success"===a.status);return b?(0,h.jsx)("span",{className:"inline-flex items-center gap-1 text-xs text-primary",children:(0,h.jsx)(ey.Loader2,{className:"size-3 animate-spin"})}):c?(0,h.jsx)("span",{className:"inline-flex items-center gap-1 text-xs text-warning",children:(0,h.jsx)(ez.MessageSquare,{className:"size-3"})}):d?(0,h.jsx)("span",{className:"inline-flex items-center gap-1 text-xs text-destructive",children:(0,h.jsx)(eB.XCircle,{className:"size-3"})}):e?(0,h.jsx)("span",{className:"inline-flex items-center gap-1 text-xs text-success",children:(0,h.jsx)(eA.CheckCircle2,{className:"size-3"})}):null}function eI({task:a,dragHandleProps:b,tabTodosMap:c}){let d=(0,j.useRouter)(),[e,f]=(0,i.useState)(!1),g=(0,P.getRepoColor)(a.owner,a.repo),k=a.tabs??[],l=k.some(a=>"running"===a.status),m=(0,eC.unreadKind)(a),n=(0,eE.sumTodoProgress)(k.map(a=>c?.get(a.tab_id)??a.todos??[])),o=a.id.slice(0,5)+"…",p=(0,i.useCallback)(b=>{b.stopPropagation(),navigator.clipboard.writeText(a.id).then(()=>{f(!0),setTimeout(()=>f(!1),2e3)})},[a.id]);return(0,h.jsxs)("div",{...b,onClick:()=>d.push(`/tasks/${a.id}`),className:(0,H.cn)("relative rounded-lg border border-border bg-card p-3 shadow-sm transition-shadow hover:shadow-md cursor-pointer",l&&"opacity-50"),children:[m&&(0,h.jsx)("span",{role:"img","aria-label":eG[m].label,title:eG[m].label,className:(0,H.cn)("absolute left-0 top-2.5 bottom-2.5 w-[3px] rounded-r-[3px]",eG[m].className)}),(0,h.jsxs)("div",{className:"space-y-2",children:[(0,h.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,h.jsxs)("div",{className:"flex items-center gap-1",children:[(0,h.jsx)(eH,{tabs:a.tabs}),(0,h.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:o}),(0,h.jsx)("button",{onClick:p,className:"size-5 inline-flex items-center justify-center rounded-sm hover:bg-accent transition-colors",title:"Copy task ID",children:e?(0,h.jsx)(x.Check,{className:"size-3 text-success"}):(0,h.jsx)(ev.Copy,{className:"size-3 text-muted-foreground"})})]}),(0,h.jsx)("span",{className:(0,H.cn)("inline-flex h-5 items-center rounded-full px-2 text-[0.625rem] font-medium",eF[a.status]),children:a.status})]}),(0,h.jsx)("p",{className:"text-sm font-medium text-foreground",children:a.title}),a.description&&(0,h.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-2",children:a.description}),n.total>0&&(0,h.jsxs)("div",{className:"space-y-0.5",children:[(0,h.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,h.jsx)(eD.Progress,{value:n.completed,max:n.total,className:"flex-1 gap-0 [&_[data-slot=progress-track]]:h-[3px]"}),(0,h.jsxs)("span",{className:"text-[10px] text-muted-foreground tabular-nums shrink-0",children:[n.completed,"/",n.total]})]}),n.current&&(0,h.jsx)("p",{className:"truncate text-[10px] text-muted-foreground",title:n.current,children:n.current})]}),(0,h.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,h.jsxs)("span",{className:(0,H.cn)("inline-flex h-5 items-center rounded-full px-2 text-[0.625rem] font-medium",g.bg,g.text),children:[a.owner,"/",a.repo]}),a.branch&&(0,h.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs text-muted-foreground",children:[(0,h.jsx)(ew.GitBranch,{className:"size-3"}),(0,h.jsx)("span",{className:"truncate max-w-[120px]",children:a.branch})]}),null!=a.effort&&a.effort>0&&(0,h.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs text-muted-foreground",children:[(0,h.jsx)(ex,{className:"size-3"}),a.effort,"h"]})]})]})]})}function eJ({droppableId:a,tasks:b,onReorder:c,onDragStateChange:d,tabTodosMap:e}){let f=(0,i.useCallback)(()=>{d?.(!0)},[d]),g=(0,i.useCallback)(a=>{if(d?.(!1),!a.destination)return;let{source:e,destination:f}=a;if(e.index===f.index)return;let g=[...b],[h]=g.splice(e.index,1);g.splice(f.index,0,h),c(g.map((a,b)=>({...a,order:b})))},[b,c,d]);return(0,h.jsx)(dX,{onDragStart:f,onDragEnd:g,children:(0,h.jsx)(eu,{droppableId:a,children:a=>(0,h.jsxs)("div",{ref:a.innerRef,...a.droppableProps,className:"space-y-2",children:[b.map((a,b)=>(0,h.jsx)(d6,{draggableId:a.id,index:b,children:b=>(0,h.jsx)("div",{ref:b.innerRef,...b.draggableProps,children:(0,h.jsx)(eI,{task:a,dragHandleProps:b.dragHandleProps,tabTodosMap:e})})},a.id)),a.placeholder]})})})}function eK({owner:a,repo:b,tasks:c,filters:d,onFilterChange:e,onReorder:f,onAddTask:g,onMoveToFront:i,onDragStateChange:j,tabTodosMap:k}){let l=(0,P.getRepoColor)(a,b),m=c.filter(eC.hasUnreadResult).length;return(0,h.jsxs)("div",{className:"flex h-full flex-col",children:[(0,h.jsxs)("div",{className:"flex-shrink-0 flex items-center gap-2 px-4 pt-4",children:[(0,h.jsx)("span",{className:(0,H.cn)("inline-flex h-6 min-w-0 items-center rounded-full px-2.5 text-xs font-medium",l.bg,l.text),title:`${a}/${b}`,"data-repo":`${a}/${b}`,children:(0,h.jsxs)("span",{className:"truncate",children:[a,"/",b]})}),(0,h.jsx)("span",{className:"text-xs tabular-nums text-muted-foreground",children:c.length}),m>0&&(0,h.jsx)("span",{className:"inline-flex h-5 min-w-5 items-center justify-center rounded-full bg-primary px-1.5 text-[0.625rem] font-medium tabular-nums text-primary-foreground",title:`${m} unopened result${m>1?"s":""}`,children:m}),i&&(0,h.jsx)(s.Button,{variant:"ghost",size:"icon",onClick:i,className:"ml-auto size-6 flex-shrink-0 text-muted-foreground",title:"Move to front",children:(0,h.jsx)(J,{className:"size-3.5"})})]}),(0,h.jsx)("div",{className:"flex-shrink-0 px-4 pt-2",children:(0,h.jsx)(S,{repositories:[],filters:d,onFilterChange:e,onAddTask:g})}),(0,h.jsx)("div",{className:"flex-1 overflow-y-auto px-4 py-4",children:c.length>0?(0,h.jsx)(eJ,{droppableId:`planner-task-list-${a}/${b}`,tasks:c,onReorder:f,onDragStateChange:j,tabTodosMap:k}):(0,h.jsx)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:"No tasks found"})})]})}let eL={statuses:[],repos:[],search:""},eM="h-full w-full flex-shrink-0 snap-start border-r border-border lg:w-[22.5rem]";function eN({repositories:a,tasksByRepo:b,filtersByRepo:c,onFilterChange:d,onReorder:e,onMoveRepositoryToFront:f,onAddTask:g,onCloneClick:j,isCloneOnboarding:k=!1,isCloneDialogOpen:l=!1,tabTodosMap:m}){let[n,o]=(0,i.useState)(!1),p=(0,i.useMemo)(()=>[...a].sort((a,b)=>a.order-b.order),[a]);return(0,h.jsxs)("div",{className:(0,H.cn)("flex flex-1 overflow-x-auto overflow-y-hidden overscroll-x-contain",!n&&"snap-x snap-mandatory"),children:[p.map((a,i)=>{var j,k;let l=(j=a.owner,k=a.repo,`${j}/${k}`);return(0,h.jsx)("div",{className:eM,children:(0,h.jsx)(eK,{owner:a.owner,repo:a.repo,tasks:b.get(l)??[],filters:c[l]??eL,onFilterChange:a=>d(l,a),onReorder:e,onAddTask:()=>g({owner:a.owner,repo:a.repo}),onMoveToFront:0===i?void 0:()=>f(a.id),onDragStateChange:o,tabTodosMap:m})},a.id)}),(0,h.jsx)("div",{className:eM,children:(0,h.jsx)(I,{onCloneClick:j,isOnboarding:k,isCloneDialogOpen:l})})]})}var eO=a.i(91399),eP=a.i(83915),eQ=a.i(93886),eR=a.i(78512),eS=a.i(6828);let eT={statuses:[],repos:[],search:""};a.s(["default",0,function(){let a,b=(0,j.useRouter)(),{tasks:c,setTasks:d,isLoading:e,reload:f}=(0,eQ.useLiveTasks)({onTaskCreated:(a,b)=>{eS.toaster.create(b.length>0?{type:"warning",title:"Task created with warnings",description:(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)("p",{children:a.title}),b.map(a=>(0,h.jsx)("p",{children:a},a))]}),duration:1/0}:{type:"success",title:"Task created",description:a.title,duration:5e3})},onTaskUpdated:a=>{eS.toaster.create({type:"info",title:"Task updated",description:a.title,duration:5e3})},onTaskDeleted:(a,b)=>{b&&eS.toaster.create({type:"info",title:"Task deleted",description:b.title,duration:5e3})}}),[g,k]=(0,i.useState)([]),[l,m]=(0,i.useState)(!1),[n,o]=(0,i.useState)(!0),[p,q]=(0,i.useState)(!1),[r,s]=(0,i.useState)(null),[t,u]=(0,i.useState)(!1),[w,x]=(0,i.useState)(()=>({})),A=(0,i.useMemo)(()=>c.filter(eC.hasUnreadResult).length,[c]);(0,eR.useDocumentTitle)((a=Object.entries(w).filter(([,a])=>a.statuses.length>0||!!a.search.trim()).map(([a,b])=>{let c=[];return b.search.trim()&&c.push(`"${b.search.trim()}"`),b.statuses.length&&c.push(b.statuses.join(", ")),`${a.split("/").pop()??a}: ${c.join(" / ")}`})).length?a.join(" | "):void 0,A),(0,i.useEffect)(()=>{try{sessionStorage.setItem("tsunagi:column-filters",JSON.stringify(w))}catch{}},[w]);let B=(0,i.useCallback)((a,b)=>{x(c=>({...c,[a]:b}))},[]),C=(0,i.useMemo)(()=>{let a,b={hasRepositories:g.length>0,hasAuth:l,hasTasks:c.length>0};return a=b.hasAuth?b.hasRepositories?b.hasTasks?"complete":"task":"clone":"env",{state:b,nextStep:a}},[g,l,c]),E=(0,i.useMemo)(()=>{let a=new Map;for(let e of c){var b,d;let c=(b=e.owner,d=e.repo,`${b}/${d}`),f=w[c]??eT;if(f.statuses.length>0&&!f.statuses.includes(e.status)||f.search&&!e.title.toLowerCase().includes(f.search.toLowerCase()))continue;let g=a.get(c);g?g.push(e):a.set(c,[e])}for(let b of a.values())b.sort((a,b)=>a.order-b.order);return a},[c,w]),G=async()=>{o(!0);try{let[a,b]=await Promise.all([fetch((0,eO.apiUrl)("/api/owners")).then(a=>a.json()),fetch((0,eO.apiUrl)("/api/onboarding/status")).then(a=>a.json())]),c=a.data.owners.flatMap(a=>a.repositories);k(c),m(!!b.data?.completed)}catch(a){console.error("Failed to load data:",a)}finally{o(!1)}},H=async()=>{await Promise.all([f(),G()])},[I,J]=(0,i.useState)(!0);(0,i.useEffect)(()=>{I&&(G(),J(!1))},[]);let K=function(a){let[b,c]=(0,i.useState)(new Map),d=(0,i.useRef)(null),e=(0,i.useRef)(new Set);return(0,i.useEffect)(()=>{if(!d.current){let a=(0,eP.io)((0,eO.getServerUrl)(),{transports:["polling","websocket"]});d.current=a,a.on("todos-updated",({sessionId:a,todos:b})=>{c(c=>{let d=new Map(c);return d.set(a,b),d})}),a.on("connect",()=>{for(let b of e.current)a.emit("join",{room:b,mode:"subscribe"})})}let b=d.current;for(let c of a){let a=`tab:${c}`;e.current.has(a)||(b.emit("join",{room:a,mode:"subscribe"}),e.current.add(a))}for(let c of e.current){let d=c.replace("tab:","");a.includes(d)||(b.emit("leave",{room:c}),e.current.delete(c))}},[a]),(0,i.useEffect)(()=>{let a=e.current;return()=>{d.current?.disconnect(),d.current=null,a.clear()}},[]),b}((0,i.useMemo)(()=>c.flatMap(a=>(a.tabs??[]).filter(a=>"running"===a.status).map(a=>a.tab_id)),[c])),{isDeleting:L,deletedCount:M,errorCount:N,totalCount:O,isCompleted:P,startBatchDelete:Q,reset:R}=function(){let[a,b]=(0,i.useState)({batchId:null,totalCount:0,deletedCount:0,errorCount:0,isDeleting:!1,isCompleted:!1}),c=(0,i.useCallback)(async(a=7)=>{try{let c=await fetch((0,eO.apiUrl)("/api/tasks/batch-delete"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({daysAgo:a})});if(!c.ok)throw Error("Failed to start batch delete");let{batchId:d,totalCount:e}=(await c.json()).data;if(0===e)return{batchId:d,totalCount:e};return b({batchId:d,totalCount:e,deletedCount:e,errorCount:0,isDeleting:!1,isCompleted:!0}),{batchId:d,totalCount:e}}catch(a){throw console.error("Batch delete error:",a),a}},[]),d=(0,i.useCallback)(()=>{b({batchId:null,totalCount:0,deletedCount:0,errorCount:0,isDeleting:!1,isCompleted:!1})},[]);return{...a,startBatchDelete:c,reset:d}}();(0,i.useEffect)(()=>{(L||P)&&queueMicrotask(()=>{if(L){let a=N>0?`${M} / ${O} (${N} failed)`:`${M} / ${O}`;eS.toaster.update("batch-delete-progress",{type:"loading",title:"Deleting tasks...",description:a,duration:1/0})}if(P){eS.toaster.dismiss("batch-delete-progress");let a=N>0?`Deleted ${M} tasks (${N} failed)`:`Deleted ${M} tasks`;eS.toaster.create({type:N>0?"warning":"success",title:a,duration:5e3}),setTimeout(()=>{R()},5e3)}})},[L,P,M,N,O,R]);let S=(0,i.useCallback)(async a=>{d(b=>{let c=new Map(a.map(a=>[a.id,a]));return b.map(a=>c.get(a.id)??a)});try{await Promise.all(a.map((a,b)=>fetch((0,eO.apiUrl)(`/api/tasks/${a.id}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({order:b})})))}catch(a){console.error("Failed to update task order:",a)}},[d]),T=(0,i.useCallback)(async a=>{let b=g.find(b=>b.id===a);if(!b)return;let c=[b,...g.filter(b=>b.id!==a).sort((a,b)=>a.order-b.order)].map((a,b)=>({...a,order:b}));k(c);try{await fetch((0,eO.apiUrl)("/api/repos/reorder"),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoIds:c.map(a=>a.id)})})}catch(a){console.error("Failed to update repository order:",a)}},[g]),U=async a=>{try{let b=await fetch((0,eO.apiUrl)("/api/clone"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!b.ok){let a=await b.json().then(a=>a?.error).catch(()=>void 0);throw Error(a||`Failed to clone repository (HTTP ${b.status})`)}let c=await b.json();return k(a=>[...a,c.data.repository]),await H(),{cloneUrl:c.data.repository.cloneUrl,fallbackProtocol:c.data.fallbackProtocol??null}}catch(a){throw console.error("Failed to clone repository:",a),a}},V=async a=>{try{let b=await Q(a);if(!b||0===b.totalCount)return void eS.toaster.create({type:"info",title:"No tasks to delete",description:`No tasks completed more than ${a} days ago`,duration:3e3});eS.toaster.create({id:"batch-delete-progress",type:"loading",title:"Deleting tasks...",description:`0 / ${b.totalCount}`,duration:1/0})}catch(a){console.error("Failed to start batch delete:",a),eS.toaster.create({type:"error",title:"Failed to delete tasks",description:String(a),duration:5e3})}};return(e||n)&&0===c.length?(0,h.jsx)("div",{className:"h-screen flex items-center justify-center bg-background",children:(0,h.jsx)("div",{className:"text-center",children:(0,h.jsx)("div",{className:"text-2xl text-foreground",children:"Loading..."})})}):(0,h.jsxs)("div",{className:"h-screen flex flex-col",children:[(0,h.jsx)(v,{onSettingsClick:()=>b.push("/settings"),onReload:H,nextStep:C.nextStep}),(0,h.jsxs)("div",{className:"relative flex-1 overflow-hidden flex",children:[(0,h.jsx)(eN,{repositories:g,tasksByRepo:E,filtersByRepo:w,onFilterChange:B,onReorder:S,onMoveRepositoryToFront:T,onAddTask:s,onCloneClick:()=>q(!0),isCloneOnboarding:"clone"===C.nextStep,isCloneDialogOpen:p,tabTodosMap:K}),"env"===C.nextStep&&(0,h.jsx)(y,{hasRepositories:C.state.hasRepositories,hasEnvVars:C.state.hasAuth,hasTasks:C.state.hasTasks})]}),(0,h.jsx)(D,{isOpen:p,onClose:()=>q(!1),onClone:U,isOnboarding:"clone"===C.nextStep}),(0,h.jsx)(z.TaskDialog,{mode:"create",isOpen:null!==r,onClose:()=>s(null),repositories:g,defaultRepo:r??void 0}),(0,h.jsx)(F,{isOpen:t,onClose:()=>u(!1),onConfirm:V})]})}],46940)}];
|
|
64
|
+
`}}],"always"),resting:dm(f,"resting"),dragging:dm(f,"dragging"),dropAnimating:dm(f,"dropAnimating"),userCancel:dm(f,"userCancel")}},[w]),f=(0,U.useRef)(null),g=(0,U.useRef)(null),h=bk(by(a=>{let b=g.current;b||a9(),b.textContent=a}),[]),dn(()=>{(f.current||g.current)&&a9();let a=dq(z),b=dq(z);return f.current=a,g.current=b,a.setAttribute(`${dh}-always`,w),b.setAttribute(`${dh}-dynamic`,w),dp().appendChild(a),dp().appendChild(b),i(e.always),h(e.resting),()=>{let a=a=>{let b=a.current;b||a9(),dp().removeChild(b),a.current=null};a(f),a(g)}},[z,i=bk(a=>{let b=f.current;b||a9(),b.textContent=a},[]),h,e.always,e.resting,w]),j=bk(()=>h(e.dragging),[h,e.dragging]),k=bk(a=>{"DROP"===a?h(e.dropAnimating):h(e.userCancel)},[h,e.dropAnimating,e.userCancel]),bj(()=>({dragging:j,dropping:k,resting:l}),[j,k,l=bk(()=>{g.current&&h(e.resting)},[h,e.resting])])),I=bk(a=>{dV(B).dispatch(a)},[]),J=bj(()=>_({publishWhileDragging:cr,updateDroppableScroll:ct,updateDroppableIsEnabled:cu,updateDroppableIsCombineEnabled:cv,collectionStarting:cs},I),[I]),K=(m=bj(dv,[]),(0,U.useEffect)(()=>function(){m.clean()},[m]),m),L=bj(()=>{let a,b,c;return a=null,b=function({registry:a,callbacks:b}){let c=cZ(),d=null,e=()=>{d||(b.collectionStarting(),d=requestAnimationFrame(()=>{d=null,ck();let{additions:e,removals:f,modified:g}=c,h=Object.keys(e).map(b=>a.draggable.getById(b).getDimension(bl)).sort((a,b)=>a.descriptor.index-b.descriptor.index),i=Object.keys(g).map(b=>{let c=a.droppable.getById(b).callbacks.getScrollWhileDragging();return{droppableId:b,scroll:c}}),j={additions:h,removals:Object.keys(f),modified:i};c=cZ(),cl(),b.publish(j)}))};return{add:a=>{let b=a.descriptor.id;c.additions[b]=a,c.modified[a.descriptor.droppableId]=!0,c.removals[b]&&delete c.removals[b],e()},remove:a=>{let b=a.descriptor;c.removals[b.id]=!0,c.modified[b.droppableId]=!0,c.additions[b.id]&&delete c.additions[b.id],e()},stop:()=>{d&&(cancelAnimationFrame(d),d=null,c=cZ())}}}({callbacks:{publish:J.publishWhileDragging,collectionStarting:J.collectionStarting},registry:K}),c=c=>{a||a9();let d=a.critical.draggable;"ADDITION"===c.type&&c1(K,d,c.value)&&b.add(c.value),"REMOVAL"===c.type&&c1(K,d,c.value)&&b.remove(c.value)},{updateDroppableIsEnabled:(b,c)=>{K.droppable.exists(b)||a9(),a&&J.updateDroppableIsEnabled({id:b,isEnabled:c})},updateDroppableIsCombineEnabled:(b,c)=>{a&&(K.droppable.exists(b)||a9(),J.updateDroppableIsCombineEnabled({id:b,isCombineEnabled:c}))},scrollDroppable:(b,c)=>{a&&K.droppable.getById(b).callbacks.scroll(c)},updateDroppableScroll:(b,c)=>{a&&(K.droppable.exists(b)||a9(),J.updateDroppableScroll({id:b,newScroll:c}))},startPublishing:b=>{a&&a9();let d=K.draggable.getById(b.draggableId),e=K.droppable.getById(d.descriptor.droppableId),f={draggable:d.descriptor,droppable:e.descriptor};return a={critical:f,unsubscribe:K.subscribe(c)},(({critical:a,scrollOptions:b,registry:c})=>{let d,e,f,g,h,i;ck();let j=(d=cR(),e=c0(),f=d.y,g=d.x,i=(h=c_()).clientWidth,{frame:aU({top:f,left:g,right:g+i,bottom:f+h.clientHeight}),scroll:{initial:d,current:d,max:e,diff:{value:bl,displacement:bl}}}),k=j.scroll.current,l=a.droppable,m=c.droppable.getAllByType(l.type).map(a=>a.callbacks.getDimensionAndWatchScroll(k,b)),n={draggables:bA(c.draggable.getAllByType(a.draggable.type).map(a=>a.getDimension(k))),droppables:bz(m)};return cl(),{dimensions:n,critical:a,viewport:j}})({critical:f,registry:K,scrollOptions:b.scrollOptions})},stopPublishing:()=>{if(!a)return;b.stop();let c=a.critical.droppable;K.droppable.getAllByType(c.type).forEach(a=>a.callbacks.dragStopped()),a.unsubscribe(),a=null}}},[K,J]),M=bj(()=>(({scrollDroppable:a,scrollWindow:b,move:c,getAutoScrollerOptions:d})=>{let e=(({scrollWindow:a,scrollDroppable:b,getAutoScrollerOptions:c=()=>c5})=>{let d=a2(a),e=a2(b),f=null,g=a=>{f||a9();let{shouldUseTimeDampening:b,dragStartTime:g}=f;dg({state:a,scrollWindow:d,scrollDroppable:e,dragStartTime:g,shouldUseTimeDampening:b,getAutoScrollerOptions:c})};return{start:a=>{ck(),f&&a9();let b=Date.now(),d=!1,e=()=>{d=!0};dg({state:a,dragStartTime:0,shouldUseTimeDampening:!1,scrollWindow:e,scrollDroppable:e,getAutoScrollerOptions:c}),f={dragStartTime:b,shouldUseTimeDampening:d},cl(),d&&g(a)},stop:()=>{f&&(d.cancel(),e.cancel(),f=null)},scroll:g}})({scrollWindow:b,scrollDroppable:a,getAutoScrollerOptions:d}),f=(({move:a,scrollDroppable:b,scrollWindow:c})=>d=>{let e=d.scrollJumpRequest;if(!e)return;let f=b9(d.impact);f||a9();let g=((a,c)=>{let d;if(!df(a,c))return c;let e=(d=a.frame)&&df(a,c)?dc({current:d.scroll.current,max:d.scroll.max,change:c}):null;if(!e)return b(a.descriptor.id,c),null;let f=bn(c,e);return b(a.descriptor.id,f),bn(c,f)})(d.dimensions.droppables[f],e);if(!g)return;let h=d.viewport,i=((a,b,d)=>{if(!a||!de(b,d))return d;let e=((a,b)=>{if(!de(a,b))return null;let c=a.scroll.max;return dc({current:a.scroll.current,max:c,change:b})})(b,d);if(!e)return c(d),null;let f=bn(d,e);return c(f),bn(d,f)})(d.isWindowScrollAllowed,h,g);i&&a({client:bm(d.current.client.selection,i)})})({move:c,scrollWindow:b,scrollDroppable:a});return{scroll:a=>{d().disabled||"DRAGGING"!==a.phase||("FLUID"===a.movementMode?e.scroll(a):a.scrollJumpRequest&&f(a))},start:e.start,stop:e.stop}})({scrollWindow:c3,scrollDroppable:L.scrollDroppable,getAutoScrollerOptions:E,..._({move:cw},I)}),[L.scrollDroppable,I,E]),N=(n=(0,U.useRef)({}),o=(0,U.useRef)(null),p=(0,U.useRef)(null),q=(0,U.useRef)(!1),r=bk(function(a,b){let c={id:a,focus:b};return n.current[a]=c,function(){let b=n.current;b[a]!==c&&delete b[a]}},[]),s=bk(function(a){let b=du(w,a);b&&b!==document.activeElement&&b.focus()},[w]),t=bk(function(a,b){o.current===a&&(o.current=b)},[]),u=bk(function(){p.current||q.current&&(p.current=requestAnimationFrame(()=>{p.current=null;let a=o.current;a&&s(a)}))},[s]),v=bk(function(a){o.current=null;let b=document.activeElement;b&&b.getAttribute(di.draggableId)===a&&(o.current=a)},[]),dn(()=>(q.current=!0,function(){q.current=!1;let a=p.current;a&&cancelAnimationFrame(a)}),[]),bj(()=>({register:r,tryRecordFocus:v,tryRestoreFocusRecorded:u,tryShiftRecord:t}),[r,v,u,t])),O=bj(()=>(({dimensionMarshal:a,focusMarshal:b,styleMarshal:c,getResponders:d,announce:e,autoScroller:f})=>{let g,h,i,j,k,l;return function a(b,c,d){if("function"!=typeof b)throw Error(W(2));if("function"==typeof c&&"function"==typeof d||"function"==typeof d&&"function"==typeof arguments[3])throw Error(W(0));if("function"==typeof c&&void 0===d&&(d=c,c=void 0),void 0!==d){if("function"!=typeof d)throw Error(W(1));return d(a)(b,c)}let e=b,f=c,g=new Map,h=g,i=0,j=!1;function k(){h===g&&(h=new Map,g.forEach((a,b)=>{h.set(b,a)}))}function l(){if(j)throw Error(W(3));return f}function m(a){if("function"!=typeof a)throw Error(W(4));if(j)throw Error(W(5));let b=!0;k();let c=i++;return h.set(c,a),function(){if(b){if(j)throw Error(W(6));b=!1,k(),h.delete(c),g=null}}}function n(a){if(!function(a){if("object"!=typeof a||null===a)return!1;let b=a;for(;null!==Object.getPrototypeOf(b);)b=Object.getPrototypeOf(b);return Object.getPrototypeOf(a)===b||null===Object.getPrototypeOf(a)}(a))throw Error(W(7));if(void 0===a.type)throw Error(W(8));if("string"!=typeof a.type)throw Error(W(17));if(j)throw Error(W(9));try{j=!0,f=e(f,a)}finally{j=!1}return(g=h).forEach(a=>{a()}),a}return n({type:Z.INIT}),{dispatch:n,subscribe:m,getState:l,replaceReducer:function(a){if("function"!=typeof a)throw Error(W(10));e=a,n({type:Z.REPLACE})},[X]:function(){return{subscribe(a){if("object"!=typeof a||null===a)throw Error(W(11));function b(){a.next&&a.next(l())}return b(),{unsubscribe:m(b)}},[X](){return this}}}}}(cp,aa(function(...a){return b=>(c,d)=>{let e=b(c,d),f=()=>{throw Error(W(15))},g={getState:e.getState,dispatch:(a,...b)=>f(a,...b)};return f=aa(...a.map(a=>a(g)))(e.dispatch),{...e,dispatch:f}}}(()=>a=>b=>{cq(b,"INITIAL_PUBLISH")&&c.dragging(),cq(b,"DROP_ANIMATE")&&c.dropping(b.payload.completed.result.reason),(cq(b,"FLUSH")||cq(b,"DROP_COMPLETE"))&&c.resting(),a(b)},()=>b=>c=>{(cq(c,"DROP_COMPLETE")||cq(c,"FLUSH")||cq(c,"DROP_ANIMATE"))&&a.stopPublishing(),b(c)},({getState:b,dispatch:c})=>d=>e=>{if(!cq(e,"LIFT"))return void d(e);let{id:f,clientSelection:g,movementMode:h}=e.payload,i=b();"DROP_ANIMATING"===i.phase&&c(cC({completed:i.completed})),"IDLE"!==b().phase&&a9(),c(cB()),c({type:"BEFORE_INITIAL_CAPTURE",payload:{draggableId:f,movementMode:h}});let{critical:j,dimensions:k,viewport:l}=a.startPublishing({draggableId:f,scrollOptions:{shouldPublishImmediately:"SNAP"===h}});c({type:"INITIAL_PUBLISH",payload:{critical:j,dimensions:k,clientSelection:g,movementMode:h,viewport:l}})},cQ,cW,cX,cY,a=>b=>c=>{if(cq(c,"DROP_COMPLETE")||cq(c,"DROP_ANIMATE")||cq(c,"FLUSH")){f.stop(),b(c);return}if(cq(c,"INITIAL_PUBLISH")){b(c);let d=a.getState();"DRAGGING"!==d.phase&&a9(),f.start(d);return}b(c),f.scroll(a.getState())},cS,(g=!1,()=>a=>c=>{if(cq(c,"INITIAL_PUBLISH")){g=!0,b.tryRecordFocus(c.payload.critical.draggable.id),a(c),b.tryRestoreFocusRecorded();return}if(a(c),g){if(cq(c,"FLUSH")){g=!1,b.tryRestoreFocusRecorded();return}if(cq(c,"DROP_COMPLETE")){g=!1;let a=c.payload.completed.result;a.combine&&b.tryShiftRecord(a.draggableId,a.combine.draggableId),b.tryRestoreFocusRecorded()}}}),(h=[],i={add:a=>{let b=setTimeout(()=>(a=>{let b=h.findIndex(b=>b.timerId===a);-1===b&&a9();let[c]=h.splice(b,1);c.callback()})(b));h.push({timerId:b,callback:a})},flush:()=>{if(!h.length)return;let a=[...h];h.length=0,a.forEach(a=>{clearTimeout(a.timerId),a.callback()})}},j=null,l={beforeCapture:(a,b)=>{j&&a9(),cT("onBeforeCapture",()=>{let c=d().onBeforeCapture;c&&c({draggableId:a,mode:b})})},beforeStart:(a,b)=>{j&&a9(),cT("onBeforeDragStart",()=>{let c=d().onBeforeDragStart;c&&c(cU(a,b))})},start:(a,b)=>{j&&a9();let c=cU(a,b);j={mode:b,lastCritical:a,lastLocation:c.source,lastCombine:null},i.add(()=>{cT("onDragStart",()=>cV(d().onDragStart,c,e,bf))})},update:(a,b)=>{var c,f;let g=bE(b),h=bF(b);j||a9();let k=!((a,b)=>{if(a===b)return!0;let c=a.draggable.id===b.draggable.id&&a.draggable.droppableId===b.draggable.droppableId&&a.draggable.type===b.draggable.type&&a.draggable.index===b.draggable.index,d=a.droppable.id===b.droppable.id&&a.droppable.type===b.droppable.type;return c&&d})(a,j.lastCritical);k&&(j.lastCritical=a);let l=(c=j.lastLocation,(null!=c||null!=g)&&(null==c||null==g||c.droppableId!==g.droppableId||c.index!==g.index));l&&(j.lastLocation=g);let m=(f=j.lastCombine,(null!=f||null!=h)&&(null==f||null==h||f.draggableId!==h.draggableId||f.droppableId!==h.droppableId));if(m&&(j.lastCombine=h),!k&&!l&&!m)return;let n={...cU(a,j.mode),combine:h,destination:g};i.add(()=>{cT("onDragUpdate",()=>cV(d().onDragUpdate,n,e,bg))})},flush:()=>{j||a9(),i.flush()},drop:k=a=>{j||a9(),j=null,cT("onDragEnd",()=>cV(d().onDragEnd,a,e,bh))},abort:()=>{j&&k({...cU(j.lastCritical,j.mode),combine:null,destination:null,reason:"CANCEL"})}},a=>b=>c=>{if(cq(c,"BEFORE_INITIAL_CAPTURE"))return void l.beforeCapture(c.payload.draggableId,c.payload.movementMode);if(cq(c,"INITIAL_PUBLISH")){let a=c.payload.critical;l.beforeStart(a,c.payload.movementMode),b(c),l.start(a,c.payload.movementMode);return}if(cq(c,"DROP_COMPLETE")){let a=c.payload.completed.result;l.flush(),b(c),l.drop(a);return}if(b(c),cq(c,"FLUSH"))return void l.abort();let d=a.getState();"DRAGGING"===d.phase&&l.update(d.critical,d.impact)}))))})({announce:F,autoScroller:M,dimensionMarshal:L,focusMarshal:N,getResponders:D,styleMarshal:H}),[F,M,L,N,D,H]);B.current=O;let P=bk(()=>{let a=dV(B);"IDLE"!==a.getState().phase&&a.dispatch(cB())},[]),Q=bk(()=>{let a=dV(B).getState();return"DROP_ANIMATING"===a.phase||"IDLE"!==a.phase&&a.isDragging},[]);x(bj(()=>({isDragging:Q,tryAbort:P}),[Q,P]));let R=bk(a=>c2(dV(B).getState(),a),[]),S=bk(()=>ca(dV(B).getState()),[]),T=bj(()=>({marshal:L,focus:N,contextId:w,canLift:R,isMovementAllowed:S,dragHandleUsageInstructionsId:G,registry:K}),[w,L,G,N,R,S,K]);return!function({contextId:a,store:b,registry:c,customSensors:d,enableDefaultSensors:e}){let f=[...e?dU:[],...d||[]],g=(0,U.useState)(()=>(function(){let a=null;function b(){a||a9(),a=null}return{isClaimed:function(){return!!a},isActive:function(b){return b===a},claim:function(b){a&&a9();let c={abandon:b};return a=c,c},release:b,tryAbandon:function(){a&&(a.abandon(),b())}}})())[0],h=bk(function(a,b){dH(a)&&!dH(b)&&g.tryAbandon()},[g]);dn(function(){let a=b.getState();return b.subscribe(()=>{let c=b.getState();h(a,c),a=c})},[g,b,h]),dn(()=>g.tryAbandon,[g.tryAbandon]);let i=bk(a=>dT({lockAPI:g,registry:c,store:b,draggableId:a}),[g,c,b]),j=bk((d,e,f)=>(function({lockAPI:a,contextId:b,store:c,registry:d,draggableId:e,forceSensorStop:f,sourceEvent:g}){var h;let i,j;if(!dT({lockAPI:a,store:c,registry:d,draggableId:e}))return null;let k=d.draggable.getById(e),l=(h=k.descriptor.id,(i=dr(document,`[${dj.contextId}="${b}"]`).find(a=>a.getAttribute(dj.id)===h))&&dt(i)?i:null);if(!l||g&&!k.options.canDragInteractiveElements&&dt(j=g.target)&&function a(b,c){if(null==c)return!1;if(dP.includes(c.tagName.toLowerCase()))return!0;let d=c.getAttribute("contenteditable");return"true"===d||""===d||c!==b&&a(b,c.parentElement)}(l,j))return null;let m=a.claim(f||a6),n="PRE_DRAG";function o(){return k.options.shouldRespectForcePress}function p(){return a.isActive(m)}let q=(function(a,b){dS({expected:a,phase:n,isLockActive:p,shouldWarn:!0})&&c.dispatch(b())}).bind(null,"DRAGGING");function r(b){function d(){a.release(),n="COMPLETED"}function e(a,f={shouldBlockNextClick:!1}){b.cleanup(),f.shouldBlockNextClick&&setTimeout(a7(window,[{eventName:"click",fn:dR,options:{once:!0,passive:!1,capture:!0}}])),d(),c.dispatch(cD({reason:a}))}return"PRE_DRAG"!==n&&(d(),a9()),c.dispatch({type:"LIFT",payload:b.liftActionArgs}),n="DRAGGING",{isActive:()=>dS({expected:"DRAGGING",phase:n,isLockActive:p,shouldWarn:!1}),shouldRespectForcePress:o,drop:a=>e("DROP",a),cancel:a=>e("CANCEL",a),...b.actions}}return{isActive:()=>dS({expected:"PRE_DRAG",phase:n,isLockActive:p,shouldWarn:!1}),shouldRespectForcePress:o,fluidLift:function(a){let b=a2(a=>{q(()=>cw({client:a}))});return{...r({liftActionArgs:{id:e,clientSelection:a,movementMode:"FLUID"},cleanup:()=>b.cancel(),actions:{move:b}}),move:b}},snapLift:function(){return r({liftActionArgs:{id:e,clientSelection:aU(l.getBoundingClientRect()).center,movementMode:"SNAP"},cleanup:a6,actions:{moveUp:()=>q(cx),moveRight:()=>q(cz),moveDown:()=>q(cy),moveLeft:()=>q(cA)}})},abort:function(){dS({expected:"PRE_DRAG",phase:n,isLockActive:p,shouldWarn:!0})&&a.release()}}})({lockAPI:g,registry:c,contextId:a,store:b,draggableId:d,forceSensorStop:e||null,sourceEvent:f&&f.sourceEvent?f.sourceEvent:null}),[a,g,c,b]),k=bk(b=>{let c;return(c=function(a,b){let c=b.target;if(!(c instanceof ds(c).Element))return null;let d=`[${di.contextId}="${a}"]`,e=c.closest?c.closest(d):function a(b,c){return null==b?null:b[dQ](c)?b:a(b.parentElement,c)}(c,d);return e&&dt(e)?e:null}(a,b))?c.getAttribute(di.draggableId):null},[a]),l=bk(a=>{let b=c.draggable.findById(a);return b?b.options:null},[c.draggable]),m=bk(function(){g.isClaimed()&&(g.tryAbandon(),"IDLE"!==b.getState().phase&&b.dispatch(cB()))},[g,b]),n=bk(()=>g.isClaimed(),[g]),o=bj(()=>({canGetLock:i,tryGetLock:j,findClosestDraggableId:k,findOptionsForDraggable:l,tryReleaseLock:m,isLockClaimed:n}),[i,j,k,l,m,n]);dE(()=>{let a=dG(f);dF(()=>{a.current.length!==f.length&&a9(!1)})});for(let a=0;a<f.length;a++)f[a](o)}({contextId:w,store:O,registry:K,customSensors:y||null,enableDefaultSensors:!1!==a.enableDefaultSensors}),(0,U.useEffect)(()=>P,[P]),U.default.createElement(dB.Provider,{value:T},U.default.createElement(aR,{context:dw,store:O},a.children))}function dX(a){let b=U.default.useId(),c=a.dragHandleUsageInstructions||bb;return U.default.createElement(ba,null,d=>U.default.createElement(dW,{nonce:a.nonce,contextId:b,setCallbacks:d,dragHandleUsageInstructions:c,enableDefaultSensors:a.enableDefaultSensors,sensors:a.sensors,onBeforeCapture:a.onBeforeCapture,onBeforeDragStart:a.onBeforeDragStart,onDragStart:a.onDragStart,onDragUpdate:a.onDragUpdate,onDragEnd:a.onDragEnd,autoScrollerOptions:a.autoScrollerOptions},a.children))}var dY=U.default.createContext(null);function dZ(a){a&&dt(a)||a9()}function d$(a){let b=(0,U.useContext)(a);return b||a9(),b}function d_(a){a.preventDefault()}var d0=(a,b)=>a===b,d1=a=>{let{combine:b,destination:c}=a;return c?c.droppableId:b?b.droppableId:null};function d2(a=null){return{isDragging:!1,isDropAnimating:!1,isClone:!1,dropAnimation:null,mode:null,draggingOver:null,combineTargetFor:a,combineWith:null}}let d3={mapped:{type:"SECONDARY",offset:bl,combineTargetFor:null,shouldAnimateDisplacement:!0,snapshot:d2(null)}},d4=aQ(()=>{let a,b,c,d,e,f,g,h,i=(a=by((a,b)=>({x:a,y:b})),b=by((a,b,c=null,d=null,e=null)=>({isDragging:!0,isClone:b,isDropAnimating:!!e,dropAnimation:e,mode:a,draggingOver:c,combineWith:d,combineTargetFor:null})),c=by((a,c,d,e,f=null,g=null,h=null)=>({mapped:{type:"DRAGGING",dropping:null,draggingOver:f,combineWith:g,mode:c,offset:a,dimension:d,forceShouldAnimate:h,snapshot:b(c,e,f,g,null)}})),(d,e)=>{if(dH(d)){let b;if(d.critical.draggable.id!==e.draggableId)return null;let f=d.current.client.offset,g=d.dimensions.draggables[e.draggableId],h=b9(d.impact),i=(b=d.impact).at&&"COMBINE"===b.at.type?b.at.combine.draggableId:null,j=d.forceShouldAnimate;return c(a(f.x,f.y),d.movementMode,g,e.isClone,h,i,j)}if("DROP_ANIMATING"===d.phase){let a=d.completed;if(a.result.draggableId!==e.draggableId)return null;let c=e.isClone,f=d.dimensions.draggables[e.draggableId],g=a.result,h=g.mode,i=d1(g),j=g.combine?g.combine.draggableId:null,k={duration:d.dropDuration,curve:cF,moveTo:d.newHomeClientOffset,opacity:j?cG:null,scale:j?cI:null};return{mapped:{type:"DRAGGING",offset:d.newHomeClientOffset,dimension:f,dropping:k,draggingOver:i,combineWith:j,mode:h,forceShouldAnimate:null,snapshot:b(h,c,i,j,k)}}}return null}),j=(d=by((a,b)=>({x:a,y:b})),e=by(d2),f=by((a,b=null,c)=>({mapped:{type:"SECONDARY",offset:a,combineTargetFor:b,shouldAnimateDisplacement:c,snapshot:e(b)}})),g=a=>a?f(bl,a,!0):null,h=(a,b,c,e)=>{let h=c.displaced.visible[a],i=!!(e.inVirtualList&&e.effected[a]),j=bF(c),k=j&&j.draggableId===a?b:null;if(!h){if(!i)return g(k);if(c.displaced.invisible[a])return null;let b=bp(e.displacedBy.point);return f(d(b.x,b.y),k,!0)}if(i)return g(k);let l=c.displacedBy.point;return f(d(l.x,l.y),k,h.shouldAnimate)},(a,b)=>{if(dH(a))return a.critical.draggable.id===b.draggableId?null:h(b.draggableId,a.critical.draggable.id,a.impact,a.afterCritical);if("DROP_ANIMATING"===a.phase){let c=a.completed;return c.result.draggableId===b.draggableId?null:h(b.draggableId,c.result.draggableId,c.impact,c.afterCritical)}return null});return(a,b)=>i(a,b)||j(a,b)||d3},{dropAnimationFinished:cE},null,{context:dw,areStatePropsEqual:d0})(a=>{let b=(0,U.useRef)(null),c=bk((a=null)=>{b.current=a},[]),d=bk(()=>b.current,[]),{contextId:e,dragHandleUsageInstructionsId:f,registry:g}=d$(dB),{type:h,droppableId:i}=d$(dY),j=bj(()=>({id:a.draggableId,index:a.index,type:h,droppableId:i}),[a.draggableId,a.index,h,i]),{children:k,draggableId:l,isEnabled:m,shouldRespectForcePress:n,canDragInteractiveElements:o,isClone:p,mapped:q,dropAnimationFinished:r}=a;dF(()=>{let b=a.draggableId;b||a9(!1),"string"!=typeof b&&a9(!1),Number.isInteger(a.index)||a9(!1),"DRAGGING"!==a.mapped.type&&(dZ(d()),a.isEnabled&&(du(e,b)||a9(!1)))}),dE(()=>{let a=(0,U.useRef)(p);dF(()=>{p!==a.current&&a9(!1)},[p])}),p||function(a){let b=dA("draggable"),{descriptor:c,registry:d,getDraggableRef:e,canDragInteractiveElements:f,shouldRespectForcePress:g,isEnabled:h}=a,i=bj(()=>({canDragInteractiveElements:f,shouldRespectForcePress:g,isEnabled:h}),[f,h,g]),j=bk(a=>{let b=e();return b||a9(),function(a,b,c=bl){let d=window.getComputedStyle(b),e=a0(b.getBoundingClientRect(),d),f=a_(e,c),g={client:e,tagName:b.tagName.toLowerCase(),display:d.display};return{descriptor:a,placeholder:g,displaceBy:{x:e.marginBox.width,y:e.marginBox.height},client:e,page:f}}(c,b,a)},[c,e]),k=bj(()=>({uniqueId:b,descriptor:c,options:i,getDimension:j}),[c,j,i,b]),l=(0,U.useRef)(k),m=(0,U.useRef)(!0);dn(()=>(d.draggable.register(l.current),()=>d.draggable.unregister(l.current)),[d.draggable]),dn(()=>{if(m.current){m.current=!1;return}let a=l.current;l.current=k,d.draggable.update(k,a)},[k,d.draggable])}(bj(()=>({descriptor:j,registry:g,getDraggableRef:d,canDragInteractiveElements:o,shouldRespectForcePress:n,isEnabled:m}),[j,g,d,o,n,m]));let s=bj(()=>m?{tabIndex:0,role:"button","aria-describedby":f,"data-rfd-drag-handle-draggable-id":l,"data-rfd-drag-handle-context-id":e,draggable:!1,onDragStart:d_}:null,[e,f,l,m]),t=bk(a=>{"DRAGGING"===q.type&&q.dropping&&"transform"===a.propertyName&&(0,V.flushSync)(r)},[r,q]),u=bj(()=>{let a="DRAGGING"===q.type?function(a){let b=a.dimension.client,{offset:c,combineWith:d,dropping:e}=a,f=!!d,g=null!=a.forceShouldAnimate?a.forceShouldAnimate:"SNAP"===a.mode,h=!!e,i=h?((a,b)=>{let c=cM(a);if(c)return b?`${c} scale(${cI})`:c})(c,f):cM(c);return{position:"fixed",top:b.marginBox.top,left:b.marginBox.left,boxSizing:"border-box",width:b.borderBox.width,height:b.borderBox.height,transition:e?cL.drop(e.duration):g?cL.snap:cL.fluid,transform:i,opacity:((a,b)=>{if(a)return b?cG:cH})(f,h),zIndex:h?4500:5e3,pointerEvents:"none"}}(q):{transform:cM(q.offset),transition:q.shouldAnimateDisplacement?void 0:"none"};return{innerRef:c,draggableProps:{"data-rfd-draggable-context-id":e,"data-rfd-draggable-id":l,style:a,onTransitionEnd:"DRAGGING"===q.type&&q.dropping?t:void 0},dragHandleProps:s}},[e,s,l,q,t,c]),v=bj(()=>({draggableId:j.id,type:j.type,source:{index:j.index,droppableId:j.droppableId}}),[j.droppableId,j.id,j.index,j.type]);return U.default.createElement(U.default.Fragment,null,k(u,q.snapshot,v))});function d5(a){return d$(dY).isUsingCloneFor!==a.draggableId||a.isClone?U.default.createElement(d4,a):null}function d6(a){let b="boolean"!=typeof a.isDragDisabled||!a.isDragDisabled,c=!!a.disableInteractiveElementBlocking,d=!!a.shouldRespectForcePress;return U.default.createElement(d5,a3({},a,{isClone:!1,isEnabled:b,canDragInteractiveElements:c,shouldRespectForcePress:d}))}let d7=a=>b=>a===b,d8=d7("scroll"),d9=d7("auto");d7("visible");let ea=(a,b)=>b(a.overflowX)||b(a.overflowY),eb=a=>{let b,c;return null==a||a===document.body||a===document.documentElement?null:ea(c={overflowX:(b=window.getComputedStyle(a)).overflowX,overflowY:b.overflowY},d8)||ea(c,d9)?a:eb(a.parentElement)};var ec=a=>({x:a.scrollLeft,y:a.scrollTop});let ed=a=>!!a&&("fixed"===window.getComputedStyle(a).position||ed(a.parentElement)),ee={passive:!1},ef={passive:!0};var eg=a=>a.shouldPublishImmediately?ee:ef;let eh=a=>a&&a.env.closestScrollable||null;function ei(){}let ej={width:0,height:0,margin:{top:0,right:0,bottom:0,left:0}};var ek=U.default.memo(a=>{let b=(0,U.useRef)(null),c=bk(()=>{b.current&&(clearTimeout(b.current),b.current=null)},[]),{animate:d,onTransitionEnd:e,onClose:f,contextId:g}=a,[h,i]=(0,U.useState)("open"===a.animate);(0,U.useEffect)(()=>h?"open"!==d?(c(),i(!1),ei):b.current?ei:(b.current=setTimeout(()=>{b.current=null,i(!1)}),c):ei,[d,h,c]);let j=bk(a=>{"height"===a.propertyName&&(e(),"close"===d&&f())},[d,f,e]),k=(({isAnimatingOpenOnMount:a,placeholder:b,animate:c})=>{let d=(({isAnimatingOpenOnMount:a,placeholder:b,animate:c})=>a||"close"===c?ej:{height:b.client.borderBox.height,width:b.client.borderBox.width,margin:b.client.margin})({isAnimatingOpenOnMount:a,placeholder:b,animate:c});return{display:b.display,boxSizing:"border-box",width:d.width,height:d.height,marginTop:d.margin.top,marginRight:d.margin.right,marginBottom:d.margin.bottom,marginLeft:d.margin.left,flexShrink:"0",flexGrow:"0",pointerEvents:"none",transition:"none"!==c?cL.placeholder:null}})({isAnimatingOpenOnMount:h,animate:a.animate,placeholder:a.placeholder});return U.default.createElement(a.placeholder.tagName,{style:k,"data-rfd-placeholder-context-id":g,onTransitionEnd:j,ref:a.innerRef})});function el(a){return"boolean"==typeof a}function em(a,b){b.forEach(b=>b(a))}let en=[function({props:a}){a.droppableId||a9(),"string"!=typeof a.droppableId&&a9()},function({props:a}){el(a.isDropDisabled)||a9(),el(a.isCombineEnabled)||a9(),el(a.ignoreContainerClipping)||a9()},function({getDroppableRef:a}){dZ(a())}],eo=[function({props:a,getPlaceholderRef:b}){if(!a.placeholder||b())return}],ep=[function({props:a}){a.renderClone||a9()},function({getPlaceholderRef:a}){a()&&a9()}];class eq extends U.default.PureComponent{constructor(...a){super(...a),this.state={isVisible:!!this.props.on,data:this.props.on,animate:this.props.shouldAnimate&&this.props.on?"open":"none"},this.onClose=()=>{"close"===this.state.animate&&this.setState({isVisible:!1})}}static getDerivedStateFromProps(a,b){return a.shouldAnimate?a.on?{isVisible:!0,data:a.on,animate:"open"}:b.isVisible?{isVisible:!0,data:b.data,animate:"close"}:{isVisible:!1,animate:"close",data:null}:{isVisible:!!a.on,data:a.on,animate:"none"}}render(){if(!this.state.isVisible)return null;let a={onClose:this.onClose,data:this.state.data,animate:this.state.animate};return this.props.children(a)}}let er={mode:"standard",type:"DEFAULT",direction:"vertical",isDropDisabled:!1,isCombineEnabled:!1,ignoreContainerClipping:!1,renderClone:null,getContainerForClone:function(){return document.body||a9(),document.body}},es=a=>{let b,c={...a};for(b in er)void 0===a[b]&&(c={...c,[b]:er[b]});return c},et=(a,b)=>b.draggables[a.draggable.id],eu=aQ(()=>{let a={placeholder:null,shouldAnimatePlaceholder:!0,snapshot:{isDraggingOver:!1,draggingOverWith:null,draggingFromThisWith:null,isUsingPlaceholder:!1},useClone:null},b={...a,shouldAnimatePlaceholder:!1},c=by(a=>({draggableId:a.id,type:a.type,source:{index:a.index,droppableId:a.droppableId}})),d=by((d,e,f,g,h,i)=>{let j=h.descriptor.id;if(h.descriptor.droppableId===d){let a=i?{render:i,dragging:c(h.descriptor)}:null;return{placeholder:h.placeholder,shouldAnimatePlaceholder:!1,snapshot:{isDraggingOver:f,draggingOverWith:f?j:null,draggingFromThisWith:j,isUsingPlaceholder:!0},useClone:a}}return e?g?{placeholder:h.placeholder,shouldAnimatePlaceholder:!0,snapshot:{isDraggingOver:f,draggingOverWith:j,draggingFromThisWith:null,isUsingPlaceholder:!0},useClone:null}:a:b});return(c,e)=>{let f=es(e),g=f.droppableId,h=f.type,i=!f.isDropDisabled,j=f.renderClone;if(dH(c)){let a=c.critical;if(h!==a.droppable.type)return b;let e=et(a,c.dimensions),f=b9(c.impact)===g;return d(g,i,f,f,e,j)}if("DROP_ANIMATING"===c.phase){let a=c.completed;if(h!==a.critical.droppable.type)return b;let e=et(a.critical,c.dimensions);return d(g,i,d1(a.result)===g,b9(a.impact)===g,e,j)}if("IDLE"===c.phase&&c.completed&&!c.shouldFlush){let d=c.completed;if(h!==d.critical.droppable.type)return b;let e=b9(d.impact)===g,f=!!(d.impact.at&&"COMBINE"===d.impact.at.type),i=d.critical.droppable.id===g;if(e)return f?a:b;if(i)return a}return b}},{updateViewportMaxScroll:a=>({type:"UPDATE_VIEWPORT_MAX_SCROLL",payload:a})},(a,b,c)=>({...es(c),...a,...b}),{context:dw,areStatePropsEqual:d0})(a=>{var b;let c=(0,U.useContext)(dB);c||a9();let{contextId:d,isMovementAllowed:e}=c,f=(0,U.useRef)(null),g=(0,U.useRef)(null),{children:h,droppableId:i,type:j,mode:k,direction:l,ignoreContainerClipping:m,isDropDisabled:n,isCombineEnabled:o,snapshot:p,useClone:q,updateViewportMaxScroll:r,getContainerForClone:s}=a,t=bk(()=>f.current,[]),u=bk((a=null)=>{f.current=a},[]),v=bk(()=>g.current,[]),w=bk((a=null)=>{g.current=a},[]);b={props:a,getDroppableRef:t,getPlaceholderRef:v},dF(()=>{em(b,en),"standard"===b.props.mode&&em(b,eo),"virtual"===b.props.mode&&em(b,ep)});let x=bk(()=>{e()&&r({maxScroll:c0()})},[e,r]);!function(a){let b=(0,U.useRef)(null),c=d$(dB),d=dA("droppable"),{registry:e,marshal:f}=c,g=dG(a),h=bj(()=>({id:a.droppableId,type:a.type,mode:a.mode}),[a.droppableId,a.mode,a.type]),i=(0,U.useRef)(h),j=bj(()=>by((a,c)=>{b.current||a9(),f.updateDroppableScroll(h.id,{x:a,y:c})}),[h.id,f]),k=bk(()=>{let a=b.current;return a&&a.env.closestScrollable?ec(a.env.closestScrollable):bl},[]),l=bk(()=>{let a=k();j(a.x,a.y)},[k,j]),m=bj(()=>a2(l),[l]),n=bk(()=>{let a=b.current,c=eh(a);(a&&c||a9(),a.scrollOptions.shouldPublishImmediately)?l():m()},[m,l]),o=bk((a,d)=>{b.current&&a9();let e=g.current,f=e.getDroppableRef();f||a9();let i={closestScrollable:eb(f),isFixedOnPage:ed(f)},j={ref:f,descriptor:h,env:i,scrollOptions:d};b.current=j;let k=(({ref:a,descriptor:b,env:c,windowScroll:d,direction:e,isDropDisabled:f,isCombineEnabled:g,shouldClipSubject:h})=>{let i=c.closestScrollable,j=((a,b)=>{let c=a1(a);if(!b||a!==b)return c;let d=c.paddingBox.top-b.scrollTop,e=c.paddingBox.left-b.scrollLeft,f=d+b.scrollHeight;return aY({borderBox:aV({top:d,right:e+b.scrollWidth,bottom:f,left:e},c.border),margin:c.margin,border:c.border,padding:c.padding})})(a,i),k=a_(j,d),l=(()=>{if(!i)return null;let a=a1(i),b={scrollHeight:i.scrollHeight,scrollWidth:i.scrollWidth};return{client:a,page:a_(a,d),scroll:ec(i),scrollSize:b,shouldClipSubject:h}})();return(({descriptor:a,isEnabled:b,isCombineEnabled:c,isFixedOnPage:d,direction:e,client:f,page:g,closest:h})=>{let i=(()=>{if(!h)return null;let{scrollSize:a,client:b}=h,c=c$({scrollHeight:a.scrollHeight,scrollWidth:a.scrollWidth,height:b.paddingBox.height,width:b.paddingBox.width});return{pageMarginBox:h.page.marginBox,frameClient:b,scrollSize:a,shouldClipSubject:h.shouldClipSubject,scroll:{initial:h.scroll,current:h.scroll,max:c,diff:{value:bl,displacement:bl}}}})(),j="vertical"===e?bO:bP,k=bw({page:g,withPlaceholder:null,axis:j,frame:i});return{descriptor:a,isCombineEnabled:c,isFixedOnPage:d,axis:j,isEnabled:b,client:f,page:g,frame:i,subject:k}})({descriptor:b,isEnabled:!f,isCombineEnabled:g,isFixedOnPage:c.isFixedOnPage,direction:e,client:j,page:k,closest:l})})({ref:f,descriptor:h,env:i,windowScroll:a,direction:e.direction,isDropDisabled:e.isDropDisabled,isCombineEnabled:e.isCombineEnabled,shouldClipSubject:!e.ignoreContainerClipping}),l=i.closestScrollable;return l&&(l.setAttribute(dl.contextId,c.contextId),l.addEventListener("scroll",n,eg(j.scrollOptions))),k},[c.contextId,h,n,g]),p=bk(()=>{let a=b.current,c=eh(a);return a&&c||a9(),ec(c)},[]),q=bk(()=>{let a=b.current;a||a9();let c=eh(a);b.current=null,c&&(m.cancel(),c.removeAttribute(dl.contextId),c.removeEventListener("scroll",n,eg(a.scrollOptions)))},[n,m]),r=bk(a=>{let c=b.current;c||a9();let d=eh(c);d||a9(),d.scrollTop+=a.y,d.scrollLeft+=a.x},[]),s=bj(()=>({getDimensionAndWatchScroll:o,getScrollWhileDragging:p,dragStopped:q,scroll:r}),[q,o,p,r]),t=bj(()=>({uniqueId:d,descriptor:h,callbacks:s}),[s,h,d]);dn(()=>(i.current=t.descriptor,e.droppable.register(t),()=>{b.current&&q(),e.droppable.unregister(t)}),[s,h,q,t,f,e.droppable]),dn(()=>{b.current&&f.updateDroppableIsEnabled(i.current.id,!a.isDropDisabled)},[a.isDropDisabled,f]),dn(()=>{b.current&&f.updateDroppableIsCombineEnabled(i.current.id,a.isCombineEnabled)},[a.isCombineEnabled,f])}({droppableId:i,type:j,mode:k,direction:l,isDropDisabled:n,isCombineEnabled:o,ignoreContainerClipping:m,getDroppableRef:t});let y=bj(()=>U.default.createElement(eq,{on:a.placeholder,shouldAnimate:a.shouldAnimatePlaceholder},({onClose:a,data:b,animate:c})=>U.default.createElement(ek,{placeholder:b,onClose:a,innerRef:w,animate:c,contextId:d,onTransitionEnd:x})),[d,x,a.placeholder,a.shouldAnimatePlaceholder,w]),z=bj(()=>({innerRef:u,placeholder:y,droppableProps:{"data-rfd-droppable-id":i,"data-rfd-droppable-context-id":d}}),[d,i,y,u]),A=q?q.dragging.draggableId:null,B=bj(()=>({droppableId:i,type:j,isUsingCloneFor:A}),[i,A,j]);return U.default.createElement(dY.Provider,{value:B},h(z,p),function(){if(!q)return null;let{dragging:a,render:b}=q,c=U.default.createElement(d5,{draggableId:a.draggableId,index:a.source.index,isClone:!0,isEnabled:!0,shouldRespectForcePress:!1,canDragInteractiveElements:!0},(c,d)=>b(c,d,a));return V.default.createPortal(c,s())}())});var ev=a.i(5151),ew=a.i(10948);let ex=(0,k.default)("clock",[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);var ey=a.i(96221),ez=a.i(63588),eA=a.i(67453),eB=a.i(62722),eC=a.i(11081),eD=a.i(65025),eE=a.i(92005);let eF={backlog:"bg-muted text-muted-foreground",planning:"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-300",coding:"bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-300",reviewing:"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-300",done:"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-300"},eG={success:{className:"bg-unread-success",label:"Finished, not opened yet"},error:{className:"bg-unread-error",label:"Failed, not opened yet"},waiting:{className:"bg-unread-waiting",label:"Waiting for your input"}};function eH({tabs:a}){if(!a||0===a.length)return null;let b=a.some(a=>"running"===a.status),c=a.some(a=>"waiting"===a.status),d=a.some(a=>"error"===a.status),e=a.length>0&&a.every(a=>"success"===a.status);return b?(0,h.jsx)("span",{className:"inline-flex items-center gap-1 text-xs text-primary",children:(0,h.jsx)(ey.Loader2,{className:"size-3 animate-spin"})}):c?(0,h.jsx)("span",{className:"inline-flex items-center gap-1 text-xs text-warning",children:(0,h.jsx)(ez.MessageSquare,{className:"size-3"})}):d?(0,h.jsx)("span",{className:"inline-flex items-center gap-1 text-xs text-destructive",children:(0,h.jsx)(eB.XCircle,{className:"size-3"})}):e?(0,h.jsx)("span",{className:"inline-flex items-center gap-1 text-xs text-success",children:(0,h.jsx)(eA.CheckCircle2,{className:"size-3"})}):null}function eI({task:a,dragHandleProps:b,tabTodosMap:c}){let d=(0,j.useRouter)(),[e,f]=(0,i.useState)(!1),g=(0,P.getRepoColor)(a.owner,a.repo),k=a.tabs??[],l=k.some(a=>"running"===a.status),m=(0,eC.unreadKind)(a),n=(0,eE.sumTodoProgress)(k.map(a=>c?.get(a.tab_id)??a.todos??[])),o=a.id.slice(0,5)+"…",p=(0,i.useCallback)(b=>{b.stopPropagation(),navigator.clipboard.writeText(a.id).then(()=>{f(!0),setTimeout(()=>f(!1),2e3)})},[a.id]);return(0,h.jsxs)("div",{...b,onClick:()=>d.push(`/tasks/${a.id}`),className:(0,H.cn)("relative rounded-lg border border-border bg-card p-3 shadow-sm transition-shadow hover:shadow-md cursor-pointer",l&&"opacity-50"),children:[m&&(0,h.jsx)("span",{role:"img","aria-label":eG[m].label,title:eG[m].label,className:(0,H.cn)("absolute left-0 top-2.5 bottom-2.5 w-[3px] rounded-r-[3px]",eG[m].className)}),(0,h.jsxs)("div",{className:"space-y-2",children:[(0,h.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,h.jsxs)("div",{className:"flex items-center gap-1",children:[(0,h.jsx)(eH,{tabs:a.tabs}),(0,h.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:o}),(0,h.jsx)("button",{onClick:p,className:"size-5 inline-flex items-center justify-center rounded-sm hover:bg-accent transition-colors",title:"Copy task ID",children:e?(0,h.jsx)(x.Check,{className:"size-3 text-success"}):(0,h.jsx)(ev.Copy,{className:"size-3 text-muted-foreground"})})]}),(0,h.jsx)("span",{className:(0,H.cn)("inline-flex h-5 items-center rounded-full px-2 text-[0.625rem] font-medium",eF[a.status]),children:a.status})]}),(0,h.jsx)("p",{className:"text-sm font-medium text-foreground",children:a.title}),a.description&&(0,h.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-2",children:a.description}),n.total>0&&(0,h.jsxs)("div",{className:"space-y-0.5",children:[(0,h.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,h.jsx)(eD.Progress,{value:n.completed,max:n.total,className:"flex-1 gap-0 [&_[data-slot=progress-track]]:h-[3px]"}),(0,h.jsxs)("span",{className:"text-[10px] text-muted-foreground tabular-nums shrink-0",children:[n.completed,"/",n.total]})]}),n.current&&(0,h.jsx)("p",{className:"truncate text-[10px] text-muted-foreground",title:n.current,children:n.current})]}),(0,h.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,h.jsxs)("span",{className:(0,H.cn)("inline-flex h-5 items-center rounded-full px-2 text-[0.625rem] font-medium",g.bg,g.text),children:[a.owner,"/",a.repo]}),a.branch&&(0,h.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs text-muted-foreground",children:[(0,h.jsx)(ew.GitBranch,{className:"size-3"}),(0,h.jsx)("span",{className:"truncate max-w-[120px]",children:a.branch})]}),null!=a.effort&&a.effort>0&&(0,h.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs text-muted-foreground",children:[(0,h.jsx)(ex,{className:"size-3"}),a.effort,"h"]})]})]})]})}function eJ({droppableId:a,tasks:b,onReorder:c,onDragStateChange:d,tabTodosMap:e}){let f=(0,i.useCallback)(()=>{d?.(!0)},[d]),g=(0,i.useCallback)(a=>{if(d?.(!1),!a.destination)return;let{source:e,destination:f}=a;if(e.index===f.index)return;let g=[...b],[h]=g.splice(e.index,1);g.splice(f.index,0,h),c(g.map((a,b)=>({...a,order:b})))},[b,c,d]);return(0,h.jsx)(dX,{onDragStart:f,onDragEnd:g,children:(0,h.jsx)(eu,{droppableId:a,children:a=>(0,h.jsxs)("div",{ref:a.innerRef,...a.droppableProps,className:"space-y-2",children:[b.map((a,b)=>(0,h.jsx)(d6,{draggableId:a.id,index:b,children:b=>(0,h.jsx)("div",{ref:b.innerRef,...b.draggableProps,children:(0,h.jsx)(eI,{task:a,dragHandleProps:b.dragHandleProps,tabTodosMap:e})})},a.id)),a.placeholder]})})})}function eK({owner:a,repo:b,tasks:c,filters:d,onFilterChange:e,onReorder:f,onAddTask:g,onMoveToFront:i,onDragStateChange:j,tabTodosMap:k}){let l=(0,P.getRepoColor)(a,b),m=c.filter(eC.hasUnreadResult).length;return(0,h.jsxs)("div",{className:"flex h-full flex-col",children:[(0,h.jsxs)("div",{className:"flex-shrink-0 flex items-center gap-2 px-4 pt-4",children:[(0,h.jsx)("span",{className:(0,H.cn)("inline-flex h-6 min-w-0 items-center rounded-full px-2.5 text-xs font-medium",l.bg,l.text),title:`${a}/${b}`,"data-repo":`${a}/${b}`,children:(0,h.jsxs)("span",{className:"truncate",children:[a,"/",b]})}),(0,h.jsx)("span",{className:"text-xs tabular-nums text-muted-foreground",children:c.length}),m>0&&(0,h.jsx)("span",{className:"inline-flex h-5 min-w-5 items-center justify-center rounded-full bg-primary px-1.5 text-[0.625rem] font-medium tabular-nums text-primary-foreground",title:`${m} unopened result${m>1?"s":""}`,children:m}),i&&(0,h.jsx)(s.Button,{variant:"ghost",size:"icon",onClick:i,className:"ml-auto size-6 flex-shrink-0 text-muted-foreground",title:"Move to front",children:(0,h.jsx)(J,{className:"size-3.5"})})]}),(0,h.jsx)("div",{className:"flex-shrink-0 px-4 pt-2",children:(0,h.jsx)(S,{repositories:[],filters:d,onFilterChange:e,onAddTask:g})}),(0,h.jsx)("div",{className:"flex-1 overflow-y-auto px-4 py-4",children:c.length>0?(0,h.jsx)(eJ,{droppableId:`planner-task-list-${a}/${b}`,tasks:c,onReorder:f,onDragStateChange:j,tabTodosMap:k}):(0,h.jsx)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:"No tasks found"})})]})}let eL={statuses:[],repos:[],search:""},eM="h-full w-full flex-shrink-0 snap-start border-r border-border lg:w-[22.5rem]";function eN({repositories:a,tasksByRepo:b,filtersByRepo:c,onFilterChange:d,onReorder:e,onMoveRepositoryToFront:f,onAddTask:g,onCloneClick:j,isCloneOnboarding:k=!1,isCloneDialogOpen:l=!1,tabTodosMap:m}){let[n,o]=(0,i.useState)(!1),p=(0,i.useMemo)(()=>[...a].sort((a,b)=>a.order-b.order),[a]);return(0,h.jsxs)("div",{className:(0,H.cn)("flex flex-1 overflow-x-auto overflow-y-hidden overscroll-x-contain",!n&&"snap-x snap-mandatory"),children:[p.map((a,i)=>{var j,k;let l=(j=a.owner,k=a.repo,`${j}/${k}`);return(0,h.jsx)("div",{className:eM,children:(0,h.jsx)(eK,{owner:a.owner,repo:a.repo,tasks:b.get(l)??[],filters:c[l]??eL,onFilterChange:a=>d(l,a),onReorder:e,onAddTask:()=>g({owner:a.owner,repo:a.repo}),onMoveToFront:0===i?void 0:()=>f(a.id),onDragStateChange:o,tabTodosMap:m})},a.id)}),(0,h.jsx)("div",{className:eM,children:(0,h.jsx)(I,{onCloneClick:j,isOnboarding:k,isCloneDialogOpen:l})})]})}var eO=a.i(91399),eP=a.i(83915),eQ=a.i(93886),eR=a.i(78512),eS=a.i(6828);let eT={statuses:[],repos:[],search:""};a.s(["default",0,function(){let a,b=(0,j.useRouter)(),{tasks:c,setTasks:d,isLoading:e,reload:f}=(0,eQ.useLiveTasks)({onTaskCreated:(a,b)=>{eS.toaster.create(b.length>0?{type:"warning",title:"Task created with warnings",description:(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)("p",{children:a.title}),b.map(a=>(0,h.jsx)("p",{children:a},a))]}),duration:1/0}:{type:"success",title:"Task created",description:a.title,duration:5e3})},onTaskUpdated:a=>{eS.toaster.create({type:"info",title:"Task updated",description:a.title,duration:5e3})},onTaskDeleted:(a,b)=>{b&&eS.toaster.create({type:"info",title:"Task deleted",description:b.title,duration:5e3})}}),[g,k]=(0,i.useState)([]),[l,m]=(0,i.useState)(!1),[n,o]=(0,i.useState)(!0),[p,q]=(0,i.useState)(!1),[r,s]=(0,i.useState)(null),[t,u]=(0,i.useState)(!1),[w,x]=(0,i.useState)(()=>({})),A=(0,i.useMemo)(()=>c.filter(eC.hasUnreadResult).length,[c]);(0,eR.useDocumentTitle)((a=Object.entries(w).filter(([,a])=>a.statuses.length>0||!!a.search.trim()).map(([a,b])=>{let c=[];return b.search.trim()&&c.push(`"${b.search.trim()}"`),b.statuses.length&&c.push(b.statuses.join(", ")),`${a.split("/").pop()??a}: ${c.join(" / ")}`})).length?a.join(" | "):void 0,A),(0,i.useEffect)(()=>{try{sessionStorage.setItem("tsunagi:column-filters",JSON.stringify(w))}catch{}},[w]);let B=(0,i.useCallback)((a,b)=>{x(c=>({...c,[a]:b}))},[]),C=(0,i.useMemo)(()=>{let a,b={hasRepositories:g.length>0,hasAuth:l,hasTasks:c.length>0};return a=b.hasAuth?b.hasRepositories?b.hasTasks?"complete":"task":"clone":"env",{state:b,nextStep:a}},[g,l,c]),E=(0,i.useMemo)(()=>{let a=new Map;for(let e of c){var b,d;let c=(b=e.owner,d=e.repo,`${b}/${d}`),f=w[c]??eT;if(f.statuses.length>0&&!f.statuses.includes(e.status)||f.search&&!e.title.toLowerCase().includes(f.search.toLowerCase()))continue;let g=a.get(c);g?g.push(e):a.set(c,[e])}for(let b of a.values())b.sort((a,b)=>a.order-b.order);return a},[c,w]),G=async()=>{o(!0);try{let[a,b]=await Promise.all([fetch((0,eO.apiUrl)("/api/owners")).then(a=>a.json()),fetch((0,eO.apiUrl)("/api/onboarding/status")).then(a=>a.json())]),c=a.data.owners.flatMap(a=>a.repositories);k(c),m(!!b.data?.completed)}catch(a){console.error("Failed to load data:",a)}finally{o(!1)}},H=async()=>{await Promise.all([f(),G()])},[I,J]=(0,i.useState)(!0);(0,i.useEffect)(()=>{I&&(G(),J(!1))},[]);let K=function(a){let[b,c]=(0,i.useState)(new Map),d=(0,i.useRef)(null),e=(0,i.useRef)(new Set);return(0,i.useEffect)(()=>{if(!d.current){let a=(0,eP.io)((0,eO.getServerUrl)(),{transports:["polling","websocket"]});d.current=a,a.on("todos-updated",({sessionId:a,todos:b})=>{c(c=>{let d=new Map(c);return d.set(a,b),d})}),a.on("connect",()=>{for(let b of e.current)a.emit("join",{room:b,mode:"subscribe"})})}let b=d.current;for(let c of a){let a=`tab:${c}`;e.current.has(a)||(b.emit("join",{room:a,mode:"subscribe"}),e.current.add(a))}for(let c of e.current){let d=c.replace("tab:","");a.includes(d)||(b.emit("leave",{room:c}),e.current.delete(c))}},[a]),(0,i.useEffect)(()=>{let a=e.current;return()=>{d.current?.disconnect(),d.current=null,a.clear()}},[]),b}((0,i.useMemo)(()=>c.flatMap(a=>(a.tabs??[]).filter(a=>"running"===a.status).map(a=>a.tab_id)),[c])),{isDeleting:L,deletedCount:M,errorCount:N,totalCount:O,isCompleted:P,startBatchDelete:Q,reset:R}=function(){let[a,b]=(0,i.useState)({batchId:null,totalCount:0,deletedCount:0,errorCount:0,isDeleting:!1,isCompleted:!1}),c=(0,i.useCallback)(async(a=7)=>{try{let c=await fetch((0,eO.apiUrl)("/api/tasks/batch-delete"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({daysAgo:a})});if(!c.ok)throw Error("Failed to start batch delete");let{batchId:d,totalCount:e}=(await c.json()).data;if(0===e)return{batchId:d,totalCount:e};return b({batchId:d,totalCount:e,deletedCount:e,errorCount:0,isDeleting:!1,isCompleted:!0}),{batchId:d,totalCount:e}}catch(a){throw console.error("Batch delete error:",a),a}},[]),d=(0,i.useCallback)(()=>{b({batchId:null,totalCount:0,deletedCount:0,errorCount:0,isDeleting:!1,isCompleted:!1})},[]);return{...a,startBatchDelete:c,reset:d}}();(0,i.useEffect)(()=>{(L||P)&&queueMicrotask(()=>{if(L){let a=N>0?`${M} / ${O} (${N} failed)`:`${M} / ${O}`;eS.toaster.update("batch-delete-progress",{type:"loading",title:"Deleting tasks...",description:a,duration:1/0})}if(P){eS.toaster.dismiss("batch-delete-progress");let a=N>0?`Deleted ${M} tasks (${N} failed)`:`Deleted ${M} tasks`;eS.toaster.create({type:N>0?"warning":"success",title:a,duration:5e3}),setTimeout(()=>{R()},5e3)}})},[L,P,M,N,O,R]);let S=(0,i.useCallback)(async a=>{d(b=>{let c=new Map(a.map(a=>[a.id,a]));return b.map(a=>c.get(a.id)??a)});try{await Promise.all(a.map((a,b)=>fetch((0,eO.apiUrl)(`/api/tasks/${a.id}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({order:b})})))}catch(a){console.error("Failed to update task order:",a)}},[d]),T=(0,i.useCallback)(async a=>{let b=g.find(b=>b.id===a);if(!b)return;let c=[b,...g.filter(b=>b.id!==a).sort((a,b)=>a.order-b.order)].map((a,b)=>({...a,order:b}));k(c);try{await fetch((0,eO.apiUrl)("/api/repos/reorder"),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoIds:c.map(a=>a.id)})})}catch(a){console.error("Failed to update repository order:",a)}},[g]),U=async a=>{try{let b=await fetch((0,eO.apiUrl)("/api/clone"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!b.ok){let a=await b.json().then(a=>a?.error).catch(()=>void 0);throw Error(a||`Failed to clone repository (HTTP ${b.status})`)}let c=await b.json();return k(a=>[...a,c.data.repository]),await H(),{cloneUrl:c.data.repository.cloneUrl,fallbackProtocol:c.data.fallbackProtocol??null}}catch(a){throw console.error("Failed to clone repository:",a),a}},V=async a=>{try{let b=await Q(a);if(!b||0===b.totalCount)return void eS.toaster.create({type:"info",title:"No tasks to delete",description:`No tasks completed more than ${a} days ago`,duration:3e3});eS.toaster.create({id:"batch-delete-progress",type:"loading",title:"Deleting tasks...",description:`0 / ${b.totalCount}`,duration:1/0})}catch(a){console.error("Failed to start batch delete:",a),eS.toaster.create({type:"error",title:"Failed to delete tasks",description:String(a),duration:5e3})}};return e&&0===c.length||n&&0===g.length?(0,h.jsx)("div",{className:"h-screen flex items-center justify-center bg-background",children:(0,h.jsx)("div",{className:"text-center",children:(0,h.jsx)("div",{className:"text-2xl text-foreground",children:"Loading..."})})}):(0,h.jsxs)("div",{className:"h-screen flex flex-col",children:[(0,h.jsx)(v,{onSettingsClick:()=>b.push("/settings"),onReload:H,nextStep:C.nextStep}),(0,h.jsxs)("div",{className:"relative flex-1 overflow-hidden flex",children:[(0,h.jsx)(eN,{repositories:g,tasksByRepo:E,filtersByRepo:w,onFilterChange:B,onReorder:S,onMoveRepositoryToFront:T,onAddTask:s,onCloneClick:()=>q(!0),isCloneOnboarding:"clone"===C.nextStep,isCloneDialogOpen:p,tabTodosMap:K}),"env"===C.nextStep&&(0,h.jsx)(y,{hasRepositories:C.state.hasRepositories,hasEnvVars:C.state.hasAuth,hasTasks:C.state.hasTasks})]}),(0,h.jsx)(D,{isOpen:p,onClose:()=>q(!1),onClone:U,isOnboarding:"clone"===C.nextStep}),(0,h.jsx)(z.TaskDialog,{mode:"create",isOpen:null!==r,onClose:()=>s(null),repositories:g,defaultRepo:r??void 0}),(0,h.jsx)(F,{isOpen:t,onClose:()=>u(!1),onConfirm:V})]})}],46940)}];
|
|
65
65
|
|
|
66
66
|
//# sourceMappingURL=_0g.cd6a._.js.map
|