vibeman 0.0.1 → 0.0.2

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.
Files changed (71) hide show
  1. package/dist/index.js +5 -7
  2. package/dist/runtime/api/.tsbuildinfo +1 -1
  3. package/dist/runtime/api/agent/agent-service.d.ts +11 -13
  4. package/dist/runtime/api/agent/agent-service.js +25 -31
  5. package/dist/runtime/api/agent/ai-providers/claude-code-adapter.d.ts +2 -2
  6. package/dist/runtime/api/agent/ai-providers/claude-code-adapter.js +25 -36
  7. package/dist/runtime/api/agent/ai-providers/codex-cli-provider.js +48 -14
  8. package/dist/runtime/api/agent/ai-providers/types.d.ts +2 -0
  9. package/dist/runtime/api/agent/codex-cli-provider.test.js +37 -0
  10. package/dist/runtime/api/agent/parsers.d.ts +1 -0
  11. package/dist/runtime/api/agent/parsers.js +75 -8
  12. package/dist/runtime/api/agent/prompt-service.d.ts +14 -1
  13. package/dist/runtime/api/agent/prompt-service.js +123 -14
  14. package/dist/runtime/api/agent/prompt-service.test.d.ts +1 -0
  15. package/dist/runtime/api/agent/prompt-service.test.js +230 -0
  16. package/dist/runtime/api/agent/routing-policy.d.ts +14 -14
  17. package/dist/runtime/api/api/routers/ai.d.ts +6 -6
  18. package/dist/runtime/api/api/routers/ai.js +2 -17
  19. package/dist/runtime/api/api/routers/executions.d.ts +5 -5
  20. package/dist/runtime/api/api/routers/executions.js +12 -21
  21. package/dist/runtime/api/api/routers/provider-config.d.ts +165 -0
  22. package/dist/runtime/api/api/routers/provider-config.js +252 -0
  23. package/dist/runtime/api/api/routers/tasks.d.ts +10 -10
  24. package/dist/runtime/api/api/routers/workflows.d.ts +15 -16
  25. package/dist/runtime/api/api/routers/workflows.js +28 -26
  26. package/dist/runtime/api/api/routers/worktrees.d.ts +4 -5
  27. package/dist/runtime/api/api/routers/worktrees.js +11 -11
  28. package/dist/runtime/api/api/trpc.d.ts +18 -18
  29. package/dist/runtime/api/index.js +2 -10
  30. package/dist/runtime/api/lib/local-config.d.ts +245 -0
  31. package/dist/runtime/api/lib/local-config.js +288 -0
  32. package/dist/runtime/api/lib/provider-detection.d.ts +59 -0
  33. package/dist/runtime/api/lib/provider-detection.js +244 -0
  34. package/dist/runtime/api/lib/server/bootstrap.d.ts +38 -0
  35. package/dist/runtime/api/lib/server/bootstrap.js +197 -0
  36. package/dist/runtime/api/lib/server/project-root.js +24 -1
  37. package/dist/runtime/api/lib/trpc/server.d.ts +124 -31
  38. package/dist/runtime/api/lib/trpc/server.js +8 -8
  39. package/dist/runtime/api/lib/trpc/ws-server.js +2 -2
  40. package/dist/runtime/api/router.d.ts +125 -32
  41. package/dist/runtime/api/router.js +9 -31
  42. package/dist/runtime/api/settings-service.js +2 -0
  43. package/dist/runtime/api/workflows/vibing-orchestrator.d.ts +8 -3
  44. package/dist/runtime/api/workflows/vibing-orchestrator.js +182 -183
  45. package/dist/runtime/web/.next/BUILD_ID +1 -1
  46. package/dist/runtime/web/.next/app-build-manifest.json +2 -2
  47. package/dist/runtime/web/.next/build-manifest.json +2 -2
  48. package/dist/runtime/web/.next/prerender-manifest.json +3 -3
  49. package/dist/runtime/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  50. package/dist/runtime/web/.next/server/app/_not-found.html +2 -2
  51. package/dist/runtime/web/.next/server/app/_not-found.rsc +5 -5
  52. package/dist/runtime/web/.next/server/app/api/health/route.js +1 -1
  53. package/dist/runtime/web/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  54. package/dist/runtime/web/.next/server/app/api/images/[...path]/route_client-reference-manifest.js +1 -1
  55. package/dist/runtime/web/.next/server/app/api/upload/route_client-reference-manifest.js +1 -1
  56. package/dist/runtime/web/.next/server/app/index.html +2 -2
  57. package/dist/runtime/web/.next/server/app/index.rsc +6 -6
  58. package/dist/runtime/web/.next/server/app/page.js +3 -3
  59. package/dist/runtime/web/.next/server/app/page_client-reference-manifest.js +1 -1
  60. package/dist/runtime/web/.next/server/chunks/458.js +1 -1
  61. package/dist/runtime/web/.next/server/pages/404.html +2 -2
  62. package/dist/runtime/web/.next/server/pages/500.html +1 -1
  63. package/dist/runtime/web/.next/server/pages-manifest.json +1 -1
  64. package/dist/runtime/web/.next/server/server-reference-manifest.json +1 -1
  65. package/dist/runtime/web/.next/static/chunks/app/{layout-dc0cfd29075b2160.js → layout-8435322f09fd0975.js} +1 -1
  66. package/dist/runtime/web/.next/static/chunks/app/page-8c3ba579efc6f918.js +1 -0
  67. package/dist/tsconfig.tsbuildinfo +1 -1
  68. package/package.json +5 -1
  69. package/dist/runtime/web/.next/static/chunks/app/page-f34a8b196b18850b.js +0 -1
  70. /package/dist/runtime/web/.next/static/{1HR8N0rJkCvFRtbTPJMyH → mRpNgPfbYR_0wrODzlg_4}/_buildManifest.js +0 -0
  71. /package/dist/runtime/web/.next/static/{1HR8N0rJkCvFRtbTPJMyH → mRpNgPfbYR_0wrODzlg_4}/_ssgManifest.js +0 -0
@@ -138,10 +138,10 @@ Please report this to https://github.com/markedjs/marked.`,a){let a="<p>An error
138
138
  </label>
139
139
  <div>
140
140
  <p>${g}</p>
141
- </div>`}).replace(/<ul>(\s*(?:<li[^>]*data-type="taskItem"[^>]*>[\s\S]*?<\/li>\s*)+)<\/ul>/gi,'<ul data-type="taskList">$1</ul>'):b):""}function uW(a){if(!a?.trim())return"";let b=a?.trim()?a.replace(/<li([^>]*)><p>/g,"<li$1>").replace(/<\/p><\/li>/g,"</li>").replace(/<\/p><ul>/g,"<ul>").replace(/<\/p><ol>/g,"<ol>").replace(/<\/ul><p>/g,"</ul>").replace(/<\/ol><p>/g,"</ol>"):a;return uU.turndown(b)}uU.use(function(a){a.use([uL,uM,uS,uT])}),uU.addRule("listItem",{filter:a=>"LI"===a.nodeName&&!a.getAttribute("data-type"),replacement:(a,b,c)=>{a=a.replace(/^\n+/,"").replace(/\n+$/,"\n").replace(/\n/gm,"\n ");let d="- ",e=b.parentNode;if(e&&"OL"===e.nodeName){let a=Array.prototype.indexOf.call(e.children,b),c=e.getAttribute("start");d=(c?parseInt(c,10)-1:0)+a+1+". "}return d+a+(b.nextSibling&&!/\n$/.test(a)?"\n":"")}}),uU.addRule("tiptapTaskItem",{filter:(a,b)=>"LI"===a.nodeName&&"taskItem"===a.getAttribute("data-type")&&null!==a.getAttribute("data-checked"),replacement:(a,b)=>{let c="true"===b.getAttribute("data-checked"),d=b.querySelector("div"),e=d?d.textContent?.trim()||"":a.trim();return`- ${c?"[x]":"[ ]"} ${e}`}}),uU.addRule("tiptapTaskList",{filter:a=>"UL"===a.nodeName&&"taskList"===a.getAttribute("data-type"),replacement:(a,b)=>{let c=Array.from(b.children).filter(a=>"LI"===a.nodeName&&"taskItem"===a.getAttribute("data-type"));if(0===c.length)return a;let d=(a,b="")=>{let c="true"===a.getAttribute("data-checked"),e=a.querySelector("div"),f="";if(e){let a=e.cloneNode(!0);Array.from(a.querySelectorAll("ul")).forEach(a=>{a instanceof Element&&a.remove()}),f=a.textContent?.trim()||""}let g=`${b}- ${c?"[x]":"[ ]"} ${f}`,h=a.querySelector('ul[data-type="taskList"]');return h&&Array.from(h.children).filter(a=>"LI"===a.nodeName&&"taskItem"===a.getAttribute("data-type")).forEach(a=>{a instanceof Element&&(g+="\n"+d(a,b+" "))}),g};return"\n"+c.map(a=>d(a)).join("\n")+"\n"}}),uU.addRule("paragraph",{filter:"p",replacement:a=>"\n\n"+a.trim()+"\n\n"});let uX=iy.create({name:"imagePasteDrop",addOptions:()=>({upload:ov,onError:void 0,onSuccess:void 0,maxSize:5242880,allowedTypes:["image/jpeg","image/jpg","image/png","image/gif","image/webp","image/svg+xml"]}),addProseMirrorPlugins(){let a=(a,b,c)=>{a.forEach(async a=>{try{if(this.options.maxSize&&a.size>this.options.maxSize){let a=Error(`File size exceeds maximum allowed (${this.options.maxSize/1048576}MB)`);this.options.onError?.(a);return}let d=b.state.tr.insert(c,b.state.schema.text("\uD83D\uDD04 Uploading..."));b.dispatch(d);let e=this.options.upload||ov,f=await e(a),g=a.name.replace(/\.[^/.]+$/,"")||"image",h=b.state.schema.nodes.image.create({src:f,alt:g,title:g}),i=b.state,j=!1;i.doc.descendants((a,c)=>{if(!j&&a.isText&&"\uD83D\uDD04 Uploading..."===a.text){let d=i.tr.replaceRangeWith(c,c+a.nodeSize,h);return b.dispatch(d),j=!0,!1}return!0}),this.options.onSuccess?.(f)}catch(d){let a=b.state;a.doc.descendants((c,d)=>{if(c.isText&&"\uD83D\uDD04 Uploading..."===c.text){let e=a.tr.delete(d,d+c.nodeSize);return b.dispatch(e),!1}return!0});let c=d instanceof Error?d:Error("Upload failed");this.options.onError?.(c)}})};return[new ev({key:new ey("imagePasteDrop"),props:{handleDOMEvents:{drop:(b,c)=>{c.preventDefault();let{files:d}=c.dataTransfer,e=Array.from(d).filter(a=>this.options.allowedTypes?.includes(a.type));if(0===e.length)return!1;let f=b.posAtCoords({left:c.clientX,top:c.clientY});return!!f&&(a(e,b,f.pos),!0)},paste:(b,c)=>{let{files:d}=c.clipboardData,e=Array.from(d).filter(a=>this.options.allowedTypes?.includes(a.type));if(0===e.length)return!1;c.preventDefault();let{selection:f}=b.state;return a(e,b,f.from),!0},dragover:(a,b)=>(b.preventDefault(),!1),dragenter:(a,b)=>(b.preventDefault(),!1)}}})]}}),uY=JSON.parse('{"type":"doc","content":[{"type":"heading","attrs":{"textAlign":null,"level":1},"content":[{"type":"text","text":"Getting started"}]},{"type":"paragraph","attrs":{"textAlign":null},"content":[{"type":"text","text":"Welcome to the "},{"type":"text","marks":[{"type":"italic"},{"type":"highlight","attrs":{"color":"var(--tt-color-highlight-yellow)"}}],"text":"Simple Editor"},{"type":"text","text":" template! This template integrates "},{"type":"text","marks":[{"type":"bold"}],"text":"open source"},{"type":"text","text":" UI components and Tiptap extensions licensed under "},{"type":"text","marks":[{"type":"bold"}],"text":"MIT"},{"type":"text","text":"."}]},{"type":"paragraph","attrs":{"textAlign":null},"content":[{"type":"text","text":"Integrate it by following the "},{"type":"text","marks":[{"type":"link","attrs":{"href":"https://tiptap.dev/docs/ui-components/templates/simple-editor","target":"_blank","rel":"noopener noreferrer nofollow","class":null}}],"text":"Tiptap UI Components docs"},{"type":"text","text":" or using our CLI tool."}]},{"type":"codeBlock","attrs":{"language":null},"content":[{"type":"text","text":"npx @tiptap/cli init"}]},{"type":"heading","attrs":{"textAlign":null,"level":2},"content":[{"type":"text","text":"Features"}]},{"type":"blockquote","content":[{"type":"paragraph","attrs":{"textAlign":null},"content":[{"type":"text","marks":[{"type":"italic"}],"text":"A fully responsive rich text editor with built-in support for common formatting and layout tools. Type markdown "},{"type":"text","marks":[{"type":"code"}],"text":"**"},{"type":"text","marks":[{"type":"italic"}],"text":" or use keyboard shortcuts "},{"type":"text","marks":[{"type":"code"}],"text":"⌘+B"},{"type":"text","text":" for "},{"type":"text","marks":[{"type":"strike"}],"text":"most"},{"type":"text","text":" all common markdown marks. \uD83E\uDE84"}]}]},{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","text":"Add images, customize alignment, and apply "},{"type":"text","marks":[{"type":"highlight","attrs":{"color":"var(--tt-color-highlight-blue)"}}],"text":"advanced formatting"},{"type":"text","text":" to make your writing more engaging and professional."}]},{"type":"image","attrs":{"src":"/images/tiptap-ui-placeholder-image.jpg","alt":"placeholder-image","title":"placeholder-image"}},{"type":"bulletList","content":[{"type":"listItem","content":[{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"Superscript"},{"type":"text","text":" (x"},{"type":"text","marks":[{"type":"superscript"}],"text":"2"},{"type":"text","text":") and "},{"type":"text","marks":[{"type":"bold"}],"text":"Subscript"},{"type":"text","text":" (H"},{"type":"text","marks":[{"type":"subscript"}],"text":"2"},{"type":"text","text":"O) for precision."}]}]},{"type":"listItem","content":[{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"Typographic conversion"},{"type":"text","text":": automatically convert to "},{"type":"text","marks":[{"type":"code"}],"text":"->"},{"type":"text","text":" an arrow "},{"type":"text","marks":[{"type":"bold"}],"text":"→"},{"type":"text","text":"."}]}]}]},{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","marks":[{"type":"italic"}],"text":"→ "},{"type":"text","marks":[{"type":"link","attrs":{"href":"https://tiptap.dev/docs/ui-components/templates/simple-editor#features","target":"_blank","rel":"noopener noreferrer nofollow","class":null}}],"text":"Learn more"}]},{"type":"horizontalRule"},{"type":"heading","attrs":{"textAlign":"left","level":2},"content":[{"type":"text","text":"Make it your own"}]},{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","text":"Switch between light and dark modes, and tailor the editor\'s appearance with customizable CSS to match your style."}]},{"type":"taskList","content":[{"type":"taskItem","attrs":{"checked":true},"content":[{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","text":"Test template"}]}]},{"type":"taskItem","attrs":{"checked":false},"content":[{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","marks":[{"type":"link","attrs":{"href":"https://tiptap.dev/docs/ui-components/templates/simple-editor","target":"_blank","rel":"noopener noreferrer nofollow","class":null}}],"text":"Integrate the free template"}]}]}]},{"type":"paragraph","attrs":{"textAlign":"left"}}]}'),uZ=({onLinkClick:a,isMobile:b})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(oD,{children:[(0,t.jsx)(ta,{action:"undo"}),(0,t.jsx)(ta,{action:"redo"})]}),(0,t.jsx)(oE,{}),(0,t.jsxs)(oD,{children:[(0,t.jsx)(rG,{levels:[1,2,3,4],portal:b}),(0,t.jsx)(sc,{types:["bulletList","orderedList","taskList"],portal:b}),(0,t.jsx)(se,{}),(0,t.jsx)(sj,{})]}),(0,t.jsx)(oE,{}),(0,t.jsxs)(oD,{children:[(0,t.jsx)(s$,{type:"bold"}),(0,t.jsx)(s$,{type:"italic"}),(0,t.jsx)(s$,{type:"strike"}),(0,t.jsx)(s$,{type:"code"}),(0,t.jsx)(s$,{type:"underline"}),b?(0,t.jsx)(sS,{onClick:a}):(0,t.jsx)(sV,{})]}),(0,t.jsx)(oE,{}),(0,t.jsx)(oD,{children:(0,t.jsx)(rJ,{text:"Add"})})]}),u$=({onBack:a})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(oD,{children:(0,t.jsxs)(oy,{"data-style":"ghost",onClick:a,children:[(0,t.jsx)(th,{className:"tiptap-button-icon"}),(0,t.jsx)(sp,{className:"tiptap-button-icon"})]})}),(0,t.jsx)(oE,{}),(0,t.jsx)(sU,{})]}),u_=({value:a,onChange:b,placeholder:c="Start typing...",className:d,minHeight:e="200px",onSave:f})=>{let g=rZ(),[h,i]=u.useState("main"),j=u.useRef(null),k=u.useRef(a||""),l=u.useRef(null),m=function(a={},b=[]){let c=(0,u.useRef)(a);c.current=a;let[d]=(0,u.useState)(()=>new j5(c)),e=(0,cO.useSyncExternalStore)(d.subscribe,d.getEditor,d.getServerSnapshot);return(0,u.useDebugValue)(e),(0,u.useEffect)(d.onRender(b)),j2({editor:e,selector:({transactionNumber:b})=>!1===a.shouldRerenderOnTransaction||void 0===a.shouldRerenderOnTransaction?null:a.immediatelyRender&&0===b?0:b+1}),e}({immediatelyRender:!1,shouldRerenderOnTransaction:!1,editorProps:{attributes:{autocomplete:"off",autocorrect:"off",autocapitalize:"off","aria-label":c,class:`simple-editor ${d||""}`}},extensions:[m_.configure({history:{newGroupDelay:750},horizontalRule:!1,link:{openOnClick:!1,enableClickSelection:!0}}),mW.configure({placeholder:c}),oO,mo,mn.configure({nested:!0}),m1,m2,mX,oN.configure({accept:"image/*",maxSize:5242880,limit:3,upload:ov,onError:a=>console.error("Upload failed:",a)}),uX.configure({upload:ov,maxSize:5242880,onError:a=>console.error("Paste/Drop upload failed:",a),onSuccess:a=>console.log("Image uploaded successfully:",a)})],content:a?uV(a):uY,onUpdate:({editor:a})=>{l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{let c=uW(a.getHTML());c!==k.current&&(k.current=c,b?.(c))},600)}});return u.useEffect(()=>()=>{l.current&&clearTimeout(l.current)},[]),u.useEffect(()=>{g||"main"===h||i("main")},[g,h]),u.useEffect(()=>{let a=a=>{(a.metaKey||a.ctrlKey)&&"s"===a.key&&(a.preventDefault(),l.current&&clearTimeout(l.current),m&&b&&b(uW(m.getHTML())),f&&f())};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}},[m,b,f]),u.useEffect(()=>{let b=a||"";if(m&&b!==k.current){let a=b?uV(b):uY,{anchor:c,head:d}=m.state.selection||{anchor:1,head:1};m.commands.setContent(a,!1);let{from:e,to:f}=function(a,b,c){let d=Math.max(1,c-2),e=a=>Math.max(1,Math.min(a,d)),f=e(a),g=e(b);return{from:Math.min(f,g),to:Math.max(f,g)}}(c,d,m.state.doc.nodeSize);m.chain().focus().setTextSelection({from:e,to:f}).run(),k.current=b}},[m,a]),(0,t.jsx)("div",{className:"simple-editor-wrapper",style:{...e&&{minHeight:e},...b&&{height:"auto"}},children:(0,t.jsxs)(j6.Provider,{value:{editor:m},children:[(0,t.jsx)(oC,{ref:j,children:"main"===h?(0,t.jsx)(uZ,{onLinkClick:()=>i("link"),isMobile:g}):(0,t.jsx)(u$,{onBack:()=>i("main")})}),(0,t.jsx)(j_,{editor:m,role:"presentation",className:"simple-editor-content",style:{minHeight:e}})]})})};u_.displayName="SimpleEditor";var u0=E("outline","sparkles","IconSparkles",[["path",{d:"M16 18a2 2 0 0 1 2 2a2 2 0 0 1 2 -2a2 2 0 0 1 -2 -2a2 2 0 0 1 -2 2zm0 -12a2 2 0 0 1 2 2a2 2 0 0 1 2 -2a2 2 0 0 1 -2 -2a2 2 0 0 1 -2 2zm-7 12a6 6 0 0 1 6 -6a6 6 0 0 1 -6 -6a6 6 0 0 1 -6 6a6 6 0 0 1 6 6z",key:"svg-0"}]]),u1=c(55511);let u2={randomUUID:u1.randomUUID},u3=new Uint8Array(256),u4=u3.length,u5=[];for(let a=0;a<256;++a)u5.push((a+256).toString(16).slice(1));let u6=function(a,b,c){if(u2.randomUUID&&!b&&!a)return u2.randomUUID();let d=(a=a||{}).random??a.rng?.()??(u4>u3.length-16&&((0,u1.randomFillSync)(u3),u4=0),u3.slice(u4,u4+=16));if(d.length<16)throw Error("Random bytes length must be >= 16");if(d[6]=15&d[6]|64,d[8]=63&d[8]|128,b){if((c=c||0)<0||c+16>b.length)throw RangeError(`UUID byte range ${c}:${c+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[c+a]=d[a];return b}return function(a,b=0){return(u5[a[b+0]]+u5[a[b+1]]+u5[a[b+2]]+u5[a[b+3]]+"-"+u5[a[b+4]]+u5[a[b+5]]+"-"+u5[a[b+6]]+u5[a[b+7]]+"-"+u5[a[b+8]]+u5[a[b+9]]+"-"+u5[a[b+10]]+u5[a[b+11]]+u5[a[b+12]]+u5[a[b+13]]+u5[a[b+14]]+u5[a[b+15]]).toLowerCase()}(d)},u7=0;var u8=c(77597),u9=c(6142);function va({lines:a,title:b,height:c=380,scrollback:d=1e4}){let e="ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace",f=(0,u.useRef)(null),g=(0,u.useRef)(null);(0,u.useRef)(null),(0,u.useRef)(0),(0,u.useRef)(null);let[h,i]=(0,u.useState)(!1),[j,k]=(0,u.useState)(!1),[l]=(0,u.useState)(14),m=(0,u.useRef)(null),n=(0,u8.useComputedColorScheme)("light",{getInitialValueInEffect:!0});return(0,t.jsxs)(G.Box,{children:[b&&(0,t.jsx)(B.Text,{size:"sm",fw:600,mb:"xs",children:b}),(0,t.jsxs)(z.Group,{justify:"space-between",align:"center",mb:"xs",wrap:"wrap",children:[(0,t.jsxs)(z.Group,{gap:"xs",wrap:"wrap",children:[(0,t.jsx)(b_.Tooltip,{label:"Scroll to top",withArrow:!0,children:(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>{try{g.current?.scrollToTop?.()}catch(a){u9.Rm.error("Scroll to top failed",a,"terminal-logs-viewer")}},children:"Top"})}),(0,t.jsx)(b_.Tooltip,{label:"Scroll to bottom",withArrow:!0,children:(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>{try{g.current?.scrollToBottom?.()}catch(a){u9.Rm.error("Scroll to bottom failed",a,"terminal-logs-viewer")}},children:"Bottom"})}),(0,t.jsx)(b_.Tooltip,{label:j?"Collapse":"Expand",withArrow:!0,children:(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>k(a=>!a),children:j?"Collapse":"Expand"})})]}),(0,t.jsxs)(z.Group,{gap:"xs",wrap:"wrap",children:[(0,t.jsx)(b_.Tooltip,{label:"Copy all logs",withArrow:!0,children:(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>{let b=a.join("\n");navigator.clipboard?.writeText(b).catch(a=>u9.Rm.error("Copy logs to clipboard failed",a,"terminal-logs-viewer"))},children:"Copy"})}),(0,t.jsx)(b_.Tooltip,{label:"Download logs",withArrow:!0,children:(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>{let b=new Blob([a.join("\n")],{type:"text/plain;charset=utf-8"}),c=URL.createObjectURL(b),d=document.createElement("a");d.href=c,d.download="logs.txt",d.click(),URL.revokeObjectURL(c)},children:"Download"})})]})]}),(0,t.jsx)(G.Box,{ref:m,style:{height:j?Math.max(c,700):c,background:"dark"===n?"#0d1117":"var(--mantine-color-gray-1)",border:"1px solid var(--mantine-color-default-border)",overflow:"hidden",overscrollBehavior:"contain",letterSpacing:0,wordSpacing:0,fontFamily:e},children:(0,t.jsx)(G.Box,{ref:f,style:{padding:8,height:"100%",letterSpacing:0,wordSpacing:0,fontFamily:e,background:"dark"===n?"#0d1117":"#f6f8fa"}})})]})}function vb({task:a,title:b,type:c,priority:d,content:e,disabled:f=!1,onAccept:g}){let[h,i]=(0,u.useState)(!1),[j,k]=(0,u.useState)(!1),[l,m]=(0,u.useState)(null),[n,o]=(0,u.useState)([]),[p,q]=(0,u.useState)(),[r,s]=(0,u.useState)(null),v=(0,u.useRef)(0);bX.i.onExecutionUpdate.useSubscription({executionId:r||""},{enabled:!!r,onData:a=>{let b=a.logs||[],c=v.current||0,d=b.slice(c);if(d.length>0){v.current=b.length;let a=new Date().toLocaleTimeString();o(b=>[...b,...d.map(b=>`[${a}] ${b}`)])}"failed"===a.status&&(q(a.error),i(!1),k(!1),s(null),v.current=0)},onError:a=>{console.error("Execution subscription error:",a)}});let w=bX.i.stopTaskExecution.useMutation({onSuccess:()=>{o(a=>[...a,`[${new Date().toLocaleTimeString()}] Improvement cancelled successfully`])}}),x=bX.i.improveTask.useMutation({onSuccess:a=>{let b={type:a.type,priority:a.priority,content:a.content};g&&g(b),i(!1),k(!1),m(null),s(null),v.current=0},onError:a=>{console.error("Failed to improve task:",a),i(!1);let b=a.message;if(q(b),o(a=>[...a,`[${new Date().toLocaleTimeString()}] Error: ${b}`]),b.includes("Claude CLI is not installed")){let a=b.includes("To use this feature")?b:"Claude CLI is not installed or not found in PATH.";I.notifications.show({color:"red",title:"Claude CLI Missing",message:a})}else I.notifications.show({color:"red",title:"AI Improvement Failed",message:b})}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(H.Button,{size:"xs",variant:"light",leftSection:(0,t.jsx)(u0,{size:14}),onClick:()=>{if(!a||h)return;v.current=0,o([`[${new Date().toLocaleTimeString()}] Starting task improvement...`]),q(void 0),m(null),s(null),v.current=0,i(!0),k(!0);let f=function(a,b={}){let{useUuid:c=!0,includeTimestamp:d=!1,separator:e="_"}=b,f=[a];if(d&&f.push(Date.now().toString()),c)f.push(u6());else if("undefined"!=typeof crypto&&crypto.randomUUID)f.push(crypto.randomUUID());else{let a=Date.now(),b=Math.random().toString(36).substring(2,11),c=Math.random().toString(36).substring(2,7),d=u7=(u7+1)%1e4;f.push(`${a.toString(36)}${b}${c}${d.toString(36)}`)}return f.join(e)}("improve");s(f),o(a=>[...a,`[${new Date().toLocaleTimeString()}] Analyzing current task data...`,`[${new Date().toLocaleTimeString()}] Sending task data to Claude...`]),x.mutate({taskId:a.id,title:b,type:c,priority:d,content:e,executionId:f})},loading:h,disabled:f||h,children:h?"Improving...":"Improve with Vibeman"}),(0,t.jsx)(cG.Modal,{opened:j,onClose:()=>h?null:k(!1),withCloseButton:!h,size:"860px",title:(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(B.Text,{fw:500,children:"Improving Task"}),l?.selectedModel&&(0,t.jsxs)(B.Text,{size:"sm",c:"dimmed",children:["• ",l.selectedModel]})]}),styles:{body:{maxHeight:"calc(100vh - 200px)",overflowY:"auto"}},children:(0,t.jsxs)(y.Stack,{gap:"md",children:[n.length>0&&(0,t.jsx)(va,{lines:n,height:240}),h&&(0,t.jsx)(B.Text,{c:"blue",size:"sm",fw:500,style:{textAlign:"center"},children:"⚡ Processing..."}),p&&!h&&(0,t.jsx)(B.Text,{c:"red",children:p}),(0,t.jsx)("div",{style:{position:"sticky",bottom:"-16px",left:0,right:0,background:"var(--mantine-color-body)",borderTop:"1px solid var(--mantine-color-default-border)",paddingTop:"12px",paddingBottom:"4px"},children:(0,t.jsx)(z.Group,{justify:"flex-end",children:h?(0,t.jsx)(H.Button,{variant:"subtle",color:"red",onClick:()=>{r&&w.mutate({executionId:r}),i(!1),k(!1),s(null),o(a=>[...a,`[${new Date().toLocaleTimeString()}] Improvement cancelled by user`])},children:"Cancel"}):(0,t.jsx)(H.Button,{variant:"subtle",onClick:()=>k(!1),children:"Close"})})})]})})]})}c(93369);let vc={autoQualityChecks:!0,autoCommit:!1,createPR:!1,autoMerge:!1,aiCodeReview:!0,requireHumanApproval:!0,stepByStepMode:!1};function vd(a,b){switch(b.type){case"INITIALIZE":return{...a,...b.payload};case"SET_REQUIRE_HUMAN_APPROVAL":return{...a,requireHumanApproval:b.payload,...b.payload&&{autoCommit:!1,createPR:!1,autoMerge:!1}};case"SET_AUTO_COMMIT":return{...a,autoCommit:b.payload,...!1===b.payload&&{createPR:!1,autoMerge:!1}};case"SET_CREATE_PR":return{...a,createPR:b.payload,...b.payload&&{autoCommit:!0,autoMerge:!1}};case"SET_AUTO_MERGE":return{...a,autoMerge:b.payload,...b.payload&&{autoCommit:!0,createPR:!1,requireHumanApproval:!1}};case"SET_AUTO_QUALITY_CHECKS":return{...a,autoQualityChecks:b.payload};case"SET_AI_CODE_REVIEW":return{...a,aiCodeReview:b.payload};case"SET_STEP_BY_STEP_MODE":return{...a,stepByStepMode:b.payload};default:return a}}var ve=c(54569),vf=c(31954);function vg({label:a,tooltip:b,checked:c,disabled:d=!1,onChange:e}){return(0,t.jsx)(b_.Tooltip,{label:b,withArrow:!0,position:"bottom",children:(0,t.jsxs)(vf.Checkbox.Card,{radius:"sm",checked:c,onChange:e,disabled:d,style:{display:"inline-flex",alignItems:"center",padding:"6px 10px",width:"auto",opacity:d?.5:1},children:[(0,t.jsx)(vf.Checkbox.Indicator,{}),(0,t.jsx)(B.Text,{size:"sm",fw:500,ml:6,children:a})]})})}var vh=E("outline","clock","IconClock",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 7v5l3 3",key:"svg-1"}]]),vi=E("outline","test-pipe","IconTestPipe",[["path",{d:"M20 8.04l-12.122 12.124a2.857 2.857 0 1 1 -4.041 -4.04l12.122 -12.124",key:"svg-0"}],["path",{d:"M7 13h8",key:"svg-1"}],["path",{d:"M19 15l1.5 1.6a2 2 0 1 1 -3 0l1.5 -1.6z",key:"svg-2"}],["path",{d:"M15 3l6 6",key:"svg-3"}]]),vj=E("outline","eye","IconEye",[["path",{d:"M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0",key:"svg-0"}],["path",{d:"M21 12c-2.4 4 -5.4 6 -9 6c-3.6 0 -6.6 -2 -9 -6c2.4 -4 5.4 -6 9 -6c3.6 0 6.6 2 9 6",key:"svg-1"}]]),vk=E("outline","thumb-up","IconThumbUp",[["path",{d:"M7 11v8a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1v-7a1 1 0 0 1 1 -1h3a4 4 0 0 0 4 -4v-1a2 2 0 0 1 4 0v5h3a2 2 0 0 1 2 2l-1 5a2 3 0 0 1 -2 2h-7a3 3 0 0 1 -3 -3",key:"svg-0"}]]),vl=E("outline","check","IconCheck",[["path",{d:"M5 12l5 5l10 -10",key:"svg-0"}]]);let vm={draft:"gray",implementing:"yellow",implemented:"yellow",validating:"orange",validated:"orange","ai-reviewing":"indigo","ai-reviewed":"indigo","awaiting-review":"grape",paused:"gray",approved:"green",merging:"teal",merged:"teal",cleaning:"gray",cleaned:"gray",completed:"teal",failed:"red"},vn={draft:vh,implementing:b1,implemented:b1,validating:vi,validated:vi,"ai-reviewing":vj,"ai-reviewed":vj,"awaiting-review":vj,paused:vh,approved:vk,merging:vl,merged:vl,cleaning:cL,cleaned:cL,completed:vl,failed:ce};var vo=E("outline","player-pause","IconPlayerPause",[["path",{d:"M6 5m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-0"}],["path",{d:"M14 5m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-1"}]]),vp=c(8306),vq=c(14679),vr=E("outline","coins","IconCoins",[["path",{d:"M9 14c0 1.657 2.686 3 6 3s6 -1.343 6 -3s-2.686 -3 -6 -3s-6 1.343 -6 3z",key:"svg-0"}],["path",{d:"M9 14v4c0 1.656 2.686 3 6 3s6 -1.344 6 -3v-4",key:"svg-1"}],["path",{d:"M3 6c0 1.072 1.144 2.062 3 2.598s4.144 .536 6 0c1.856 -.536 3 -1.526 3 -2.598c0 -1.072 -1.144 -2.062 -3 -2.598s-4.144 -.536 -6 0c-1.856 .536 -3 1.526 -3 2.598z",key:"svg-2"}],["path",{d:"M3 6v10c0 .888 .772 1.45 2 2",key:"svg-3"}],["path",{d:"M3 11c0 .888 .772 1.45 2 2",key:"svg-4"}]]),vs=E("outline","chevron-down","IconChevronDown",[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]]),vt=E("outline","chevron-right","IconChevronRight",[["path",{d:"M9 6l6 6l-6 6",key:"svg-0"}]]);function vu(a){if(!a||!isFinite(a)||a<0)return"n/a";let b=Math.floor(a/1e3),c=Math.floor(b/3600),d=Math.floor(b%3600/60),e=b%60;return c>0?`${c}h ${d}m ${e}s`:d>0?`${d}m ${e}s`:`${e}s`}let vv=function({executionId:a}){let b=bX.i.getTaskExecutionStatus.useQuery({executionId:a},{enabled:!!a,refetchOnWindowFocus:!1}),[c,d]=w().useState(!1),e=bX.i.getTaskExecutionLogs.useQuery({executionId:a},{enabled:!!a,refetchOnWindowFocus:!1,refetchInterval:()=>!c&&1e3}),[f,g]=w().useState(null),h=!c;bX.i.onExecutionUpdate.useSubscription(a?{executionId:a}:{},{enabled:!!a&&h,onData:a=>{a?.logs&&g(a.logs);let b=a?.status;b&&("completed"===b||"failed"===b||"cancelled"===b)&&d(!0)}}),w().useRef(!1);let i=b.data,j=i?.usage,k=(e.data?.logs||[]).map(a=>"string"==typeof a?a:a.message),l=Array.isArray(b.data?.logs)?b.data.logs.map(a=>"string"==typeof a?a:a.message):[],m=f&&f.length?f:k.length?k:l,n=(()=>{try{let a=i?.startTime?new Date(i.startTime).getTime():void 0,b=i?.endTime?new Date(i.endTime).getTime():Date.now();return a?Math.max(0,b-a):void 0}catch{return}})();return(0,t.jsxs)(y.Stack,{gap:6,mt:6,children:[!!j&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Provider: ",i?.provider||"n/a"," • Tokens: ",j.totalTokens??0," • Cost:"," ",void 0!==j.cost?`$${j.cost.toFixed(4)}`:"n/a"]}),!!n&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Duration: ",vu(n)]}),m.length>0?(0,t.jsx)(va,{lines:m,height:200}):(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:h?"Waiting for logs…":"No logs available."})]})};var vw=c(44501);function vx({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.continueWorkflow.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{size:"xs",variant:"filled",onClick:()=>c.mutate({workflowId:a}),loading:c.isPending,children:"Continue"})}function vy({workflowId:a,phase:b}){let c=bX.i.useUtils(),d=bX.i.rerunFromPhase.useMutation({onSuccess:()=>c.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",disabled:!0,onClick:()=>vw.jQ.openConfirmModal({title:"Rerun from this step",centered:!0,labels:{confirm:"Rerun",cancel:"Cancel"},children:(0,t.jsx)(B.Text,{size:"sm",children:"This will reset all later steps and logs. Continue?"}),onConfirm:()=>d.mutate({workflowId:a,phase:b})}),loading:d.isPending,children:"Rerun From Here"})}function vz({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.pauseWorkflow.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{disabled:!0,size:"xs",variant:"subtle",onClick:()=>c.mutate({workflowId:a}),loading:c.isPending,children:"Pause"})}function vA({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.skipToNextPhase.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{disabled:!0,size:"xs",variant:"subtle",onClick:()=>c.mutate({workflowId:a}),loading:c.isPending,children:"Skip To Next"})}function vB({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.approveAndContinueReview.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})}),d=bX.i.checkWorktreeStatus.useMutation();return(0,t.jsx)(H.Button,{size:"xs",variant:"filled",color:"green",onClick:async()=>{try{let b=await d.mutateAsync({workflowId:a});if(!b.clean){let e=b.uncommittedFiles?.length?`
141
+ </div>`}).replace(/<ul>(\s*(?:<li[^>]*data-type="taskItem"[^>]*>[\s\S]*?<\/li>\s*)+)<\/ul>/gi,'<ul data-type="taskList">$1</ul>'):b):""}function uW(a){if(!a?.trim())return"";let b=a?.trim()?a.replace(/<li([^>]*)><p>/g,"<li$1>").replace(/<\/p><\/li>/g,"</li>").replace(/<\/p><ul>/g,"<ul>").replace(/<\/p><ol>/g,"<ol>").replace(/<\/ul><p>/g,"</ul>").replace(/<\/ol><p>/g,"</ol>"):a;return uU.turndown(b)}uU.use(function(a){a.use([uL,uM,uS,uT])}),uU.addRule("listItem",{filter:a=>"LI"===a.nodeName&&!a.getAttribute("data-type"),replacement:(a,b,c)=>{a=a.replace(/^\n+/,"").replace(/\n+$/,"\n").replace(/\n/gm,"\n ");let d="- ",e=b.parentNode;if(e&&"OL"===e.nodeName){let a=Array.prototype.indexOf.call(e.children,b),c=e.getAttribute("start");d=(c?parseInt(c,10)-1:0)+a+1+". "}return d+a+(b.nextSibling&&!/\n$/.test(a)?"\n":"")}}),uU.addRule("tiptapTaskItem",{filter:(a,b)=>"LI"===a.nodeName&&"taskItem"===a.getAttribute("data-type")&&null!==a.getAttribute("data-checked"),replacement:(a,b)=>{let c="true"===b.getAttribute("data-checked"),d=b.querySelector("div"),e=d?d.textContent?.trim()||"":a.trim();return`- ${c?"[x]":"[ ]"} ${e}`}}),uU.addRule("tiptapTaskList",{filter:a=>"UL"===a.nodeName&&"taskList"===a.getAttribute("data-type"),replacement:(a,b)=>{let c=Array.from(b.children).filter(a=>"LI"===a.nodeName&&"taskItem"===a.getAttribute("data-type"));if(0===c.length)return a;let d=(a,b="")=>{let c="true"===a.getAttribute("data-checked"),e=a.querySelector("div"),f="";if(e){let a=e.cloneNode(!0);Array.from(a.querySelectorAll("ul")).forEach(a=>{a instanceof Element&&a.remove()}),f=a.textContent?.trim()||""}let g=`${b}- ${c?"[x]":"[ ]"} ${f}`,h=a.querySelector('ul[data-type="taskList"]');return h&&Array.from(h.children).filter(a=>"LI"===a.nodeName&&"taskItem"===a.getAttribute("data-type")).forEach(a=>{a instanceof Element&&(g+="\n"+d(a,b+" "))}),g};return"\n"+c.map(a=>d(a)).join("\n")+"\n"}}),uU.addRule("paragraph",{filter:"p",replacement:a=>"\n\n"+a.trim()+"\n\n"});let uX=iy.create({name:"imagePasteDrop",addOptions:()=>({upload:ov,onError:void 0,onSuccess:void 0,maxSize:5242880,allowedTypes:["image/jpeg","image/jpg","image/png","image/gif","image/webp","image/svg+xml"]}),addProseMirrorPlugins(){let a=(a,b,c)=>{a.forEach(async a=>{try{if(this.options.maxSize&&a.size>this.options.maxSize){let a=Error(`File size exceeds maximum allowed (${this.options.maxSize/1048576}MB)`);this.options.onError?.(a);return}let d=b.state.tr.insert(c,b.state.schema.text("\uD83D\uDD04 Uploading..."));b.dispatch(d);let e=this.options.upload||ov,f=await e(a),g=a.name.replace(/\.[^/.]+$/,"")||"image",h=b.state.schema.nodes.image.create({src:f,alt:g,title:g}),i=b.state,j=!1;i.doc.descendants((a,c)=>{if(!j&&a.isText&&"\uD83D\uDD04 Uploading..."===a.text){let d=i.tr.replaceRangeWith(c,c+a.nodeSize,h);return b.dispatch(d),j=!0,!1}return!0}),this.options.onSuccess?.(f)}catch(d){let a=b.state;a.doc.descendants((c,d)=>{if(c.isText&&"\uD83D\uDD04 Uploading..."===c.text){let e=a.tr.delete(d,d+c.nodeSize);return b.dispatch(e),!1}return!0});let c=d instanceof Error?d:Error("Upload failed");this.options.onError?.(c)}})};return[new ev({key:new ey("imagePasteDrop"),props:{handleDOMEvents:{drop:(b,c)=>{c.preventDefault();let{files:d}=c.dataTransfer,e=Array.from(d).filter(a=>this.options.allowedTypes?.includes(a.type));if(0===e.length)return!1;let f=b.posAtCoords({left:c.clientX,top:c.clientY});return!!f&&(a(e,b,f.pos),!0)},paste:(b,c)=>{let{files:d}=c.clipboardData,e=Array.from(d).filter(a=>this.options.allowedTypes?.includes(a.type));if(0===e.length)return!1;c.preventDefault();let{selection:f}=b.state;return a(e,b,f.from),!0},dragover:(a,b)=>(b.preventDefault(),!1),dragenter:(a,b)=>(b.preventDefault(),!1)}}})]}}),uY=JSON.parse('{"type":"doc","content":[{"type":"heading","attrs":{"textAlign":null,"level":1},"content":[{"type":"text","text":"Getting started"}]},{"type":"paragraph","attrs":{"textAlign":null},"content":[{"type":"text","text":"Welcome to the "},{"type":"text","marks":[{"type":"italic"},{"type":"highlight","attrs":{"color":"var(--tt-color-highlight-yellow)"}}],"text":"Simple Editor"},{"type":"text","text":" template! This template integrates "},{"type":"text","marks":[{"type":"bold"}],"text":"open source"},{"type":"text","text":" UI components and Tiptap extensions licensed under "},{"type":"text","marks":[{"type":"bold"}],"text":"MIT"},{"type":"text","text":"."}]},{"type":"paragraph","attrs":{"textAlign":null},"content":[{"type":"text","text":"Integrate it by following the "},{"type":"text","marks":[{"type":"link","attrs":{"href":"https://tiptap.dev/docs/ui-components/templates/simple-editor","target":"_blank","rel":"noopener noreferrer nofollow","class":null}}],"text":"Tiptap UI Components docs"},{"type":"text","text":" or using our CLI tool."}]},{"type":"codeBlock","attrs":{"language":null},"content":[{"type":"text","text":"npx @tiptap/cli init"}]},{"type":"heading","attrs":{"textAlign":null,"level":2},"content":[{"type":"text","text":"Features"}]},{"type":"blockquote","content":[{"type":"paragraph","attrs":{"textAlign":null},"content":[{"type":"text","marks":[{"type":"italic"}],"text":"A fully responsive rich text editor with built-in support for common formatting and layout tools. Type markdown "},{"type":"text","marks":[{"type":"code"}],"text":"**"},{"type":"text","marks":[{"type":"italic"}],"text":" or use keyboard shortcuts "},{"type":"text","marks":[{"type":"code"}],"text":"⌘+B"},{"type":"text","text":" for "},{"type":"text","marks":[{"type":"strike"}],"text":"most"},{"type":"text","text":" all common markdown marks. \uD83E\uDE84"}]}]},{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","text":"Add images, customize alignment, and apply "},{"type":"text","marks":[{"type":"highlight","attrs":{"color":"var(--tt-color-highlight-blue)"}}],"text":"advanced formatting"},{"type":"text","text":" to make your writing more engaging and professional."}]},{"type":"image","attrs":{"src":"/images/tiptap-ui-placeholder-image.jpg","alt":"placeholder-image","title":"placeholder-image"}},{"type":"bulletList","content":[{"type":"listItem","content":[{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"Superscript"},{"type":"text","text":" (x"},{"type":"text","marks":[{"type":"superscript"}],"text":"2"},{"type":"text","text":") and "},{"type":"text","marks":[{"type":"bold"}],"text":"Subscript"},{"type":"text","text":" (H"},{"type":"text","marks":[{"type":"subscript"}],"text":"2"},{"type":"text","text":"O) for precision."}]}]},{"type":"listItem","content":[{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","marks":[{"type":"bold"}],"text":"Typographic conversion"},{"type":"text","text":": automatically convert to "},{"type":"text","marks":[{"type":"code"}],"text":"->"},{"type":"text","text":" an arrow "},{"type":"text","marks":[{"type":"bold"}],"text":"→"},{"type":"text","text":"."}]}]}]},{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","marks":[{"type":"italic"}],"text":"→ "},{"type":"text","marks":[{"type":"link","attrs":{"href":"https://tiptap.dev/docs/ui-components/templates/simple-editor#features","target":"_blank","rel":"noopener noreferrer nofollow","class":null}}],"text":"Learn more"}]},{"type":"horizontalRule"},{"type":"heading","attrs":{"textAlign":"left","level":2},"content":[{"type":"text","text":"Make it your own"}]},{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","text":"Switch between light and dark modes, and tailor the editor\'s appearance with customizable CSS to match your style."}]},{"type":"taskList","content":[{"type":"taskItem","attrs":{"checked":true},"content":[{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","text":"Test template"}]}]},{"type":"taskItem","attrs":{"checked":false},"content":[{"type":"paragraph","attrs":{"textAlign":"left"},"content":[{"type":"text","marks":[{"type":"link","attrs":{"href":"https://tiptap.dev/docs/ui-components/templates/simple-editor","target":"_blank","rel":"noopener noreferrer nofollow","class":null}}],"text":"Integrate the free template"}]}]}]},{"type":"paragraph","attrs":{"textAlign":"left"}}]}'),uZ=({onLinkClick:a,isMobile:b})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(oD,{children:[(0,t.jsx)(ta,{action:"undo"}),(0,t.jsx)(ta,{action:"redo"})]}),(0,t.jsx)(oE,{}),(0,t.jsxs)(oD,{children:[(0,t.jsx)(rG,{levels:[1,2,3,4],portal:b}),(0,t.jsx)(sc,{types:["bulletList","orderedList","taskList"],portal:b}),(0,t.jsx)(se,{}),(0,t.jsx)(sj,{})]}),(0,t.jsx)(oE,{}),(0,t.jsxs)(oD,{children:[(0,t.jsx)(s$,{type:"bold"}),(0,t.jsx)(s$,{type:"italic"}),(0,t.jsx)(s$,{type:"strike"}),(0,t.jsx)(s$,{type:"code"}),(0,t.jsx)(s$,{type:"underline"}),b?(0,t.jsx)(sS,{onClick:a}):(0,t.jsx)(sV,{})]}),(0,t.jsx)(oE,{}),(0,t.jsx)(oD,{children:(0,t.jsx)(rJ,{text:"Add"})})]}),u$=({onBack:a})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(oD,{children:(0,t.jsxs)(oy,{"data-style":"ghost",onClick:a,children:[(0,t.jsx)(th,{className:"tiptap-button-icon"}),(0,t.jsx)(sp,{className:"tiptap-button-icon"})]})}),(0,t.jsx)(oE,{}),(0,t.jsx)(sU,{})]}),u_=({value:a,onChange:b,placeholder:c="Start typing...",className:d,minHeight:e="200px",onSave:f})=>{let g=rZ(),[h,i]=u.useState("main"),j=u.useRef(null),k=u.useRef(a||""),l=u.useRef(null),m=function(a={},b=[]){let c=(0,u.useRef)(a);c.current=a;let[d]=(0,u.useState)(()=>new j5(c)),e=(0,cO.useSyncExternalStore)(d.subscribe,d.getEditor,d.getServerSnapshot);return(0,u.useDebugValue)(e),(0,u.useEffect)(d.onRender(b)),j2({editor:e,selector:({transactionNumber:b})=>!1===a.shouldRerenderOnTransaction||void 0===a.shouldRerenderOnTransaction?null:a.immediatelyRender&&0===b?0:b+1}),e}({immediatelyRender:!1,shouldRerenderOnTransaction:!1,editorProps:{attributes:{autocomplete:"off",autocorrect:"off",autocapitalize:"off","aria-label":c,class:`simple-editor ${d||""}`}},extensions:[m_.configure({history:{newGroupDelay:750},horizontalRule:!1,link:{openOnClick:!1,enableClickSelection:!0}}),mW.configure({placeholder:c}),oO,mo,mn.configure({nested:!0}),m1,m2,mX,oN.configure({accept:"image/*",maxSize:5242880,limit:3,upload:ov,onError:a=>console.error("Upload failed:",a)}),uX.configure({upload:ov,maxSize:5242880,onError:a=>console.error("Paste/Drop upload failed:",a),onSuccess:a=>console.log("Image uploaded successfully:",a)})],content:a?uV(a):uY,onUpdate:({editor:a})=>{l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{let c=uW(a.getHTML());c!==k.current&&(k.current=c,b?.(c))},600)}});return u.useEffect(()=>()=>{l.current&&clearTimeout(l.current)},[]),u.useEffect(()=>{g||"main"===h||i("main")},[g,h]),u.useEffect(()=>{let a=a=>{(a.metaKey||a.ctrlKey)&&"s"===a.key&&(a.preventDefault(),l.current&&clearTimeout(l.current),m&&b&&b(uW(m.getHTML())),f&&f())};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}},[m,b,f]),u.useEffect(()=>{let b=a||"";if(m&&b!==k.current){let a=b?uV(b):uY,{anchor:c,head:d}=m.state.selection||{anchor:1,head:1};m.commands.setContent(a,!1);let{from:e,to:f}=function(a,b,c){let d=Math.max(1,c-2),e=a=>Math.max(1,Math.min(a,d)),f=e(a),g=e(b);return{from:Math.min(f,g),to:Math.max(f,g)}}(c,d,m.state.doc.nodeSize);m.chain().focus().setTextSelection({from:e,to:f}).run(),k.current=b}},[m,a]),(0,t.jsx)("div",{className:"simple-editor-wrapper",style:{...e&&{minHeight:e},...b&&{height:"auto"}},children:(0,t.jsxs)(j6.Provider,{value:{editor:m},children:[(0,t.jsx)(oC,{ref:j,children:"main"===h?(0,t.jsx)(uZ,{onLinkClick:()=>i("link"),isMobile:g}):(0,t.jsx)(u$,{onBack:()=>i("main")})}),(0,t.jsx)(j_,{editor:m,role:"presentation",className:"simple-editor-content",style:{minHeight:e}})]})})};u_.displayName="SimpleEditor";var u0=E("outline","sparkles","IconSparkles",[["path",{d:"M16 18a2 2 0 0 1 2 2a2 2 0 0 1 2 -2a2 2 0 0 1 -2 -2a2 2 0 0 1 -2 2zm0 -12a2 2 0 0 1 2 2a2 2 0 0 1 2 -2a2 2 0 0 1 -2 -2a2 2 0 0 1 -2 2zm-7 12a6 6 0 0 1 6 -6a6 6 0 0 1 -6 -6a6 6 0 0 1 -6 6a6 6 0 0 1 6 6z",key:"svg-0"}]]),u1=c(55511);let u2={randomUUID:u1.randomUUID},u3=new Uint8Array(256),u4=u3.length,u5=[];for(let a=0;a<256;++a)u5.push((a+256).toString(16).slice(1));let u6=function(a,b,c){if(u2.randomUUID&&!b&&!a)return u2.randomUUID();let d=(a=a||{}).random??a.rng?.()??(u4>u3.length-16&&((0,u1.randomFillSync)(u3),u4=0),u3.slice(u4,u4+=16));if(d.length<16)throw Error("Random bytes length must be >= 16");if(d[6]=15&d[6]|64,d[8]=63&d[8]|128,b){if((c=c||0)<0||c+16>b.length)throw RangeError(`UUID byte range ${c}:${c+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[c+a]=d[a];return b}return function(a,b=0){return(u5[a[b+0]]+u5[a[b+1]]+u5[a[b+2]]+u5[a[b+3]]+"-"+u5[a[b+4]]+u5[a[b+5]]+"-"+u5[a[b+6]]+u5[a[b+7]]+"-"+u5[a[b+8]]+u5[a[b+9]]+"-"+u5[a[b+10]]+u5[a[b+11]]+u5[a[b+12]]+u5[a[b+13]]+u5[a[b+14]]+u5[a[b+15]]).toLowerCase()}(d)},u7=0;var u8=c(77597),u9=c(6142);function va({lines:a,title:b,height:c=380,scrollback:d=1e4}){let e="ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace",f=(0,u.useRef)(null),g=(0,u.useRef)(null);(0,u.useRef)(null),(0,u.useRef)(0),(0,u.useRef)(null);let[h,i]=(0,u.useState)(!1),[j,k]=(0,u.useState)(!1),[l]=(0,u.useState)(14),m=(0,u.useRef)(null),n=(0,u8.useComputedColorScheme)("light",{getInitialValueInEffect:!0});return(0,t.jsxs)(G.Box,{children:[b&&(0,t.jsx)(B.Text,{size:"sm",fw:600,mb:"xs",children:b}),(0,t.jsxs)(z.Group,{justify:"space-between",align:"center",mb:"xs",wrap:"wrap",children:[(0,t.jsxs)(z.Group,{gap:"xs",wrap:"wrap",children:[(0,t.jsx)(b_.Tooltip,{label:"Scroll to top",withArrow:!0,children:(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>{try{g.current?.scrollToTop?.()}catch(a){u9.Rm.error("Scroll to top failed",a,"terminal-logs-viewer")}},children:"Top"})}),(0,t.jsx)(b_.Tooltip,{label:"Scroll to bottom",withArrow:!0,children:(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>{try{g.current?.scrollToBottom?.()}catch(a){u9.Rm.error("Scroll to bottom failed",a,"terminal-logs-viewer")}},children:"Bottom"})}),(0,t.jsx)(b_.Tooltip,{label:j?"Collapse":"Expand",withArrow:!0,children:(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>k(a=>!a),children:j?"Collapse":"Expand"})})]}),(0,t.jsxs)(z.Group,{gap:"xs",wrap:"wrap",children:[(0,t.jsx)(b_.Tooltip,{label:"Copy all logs",withArrow:!0,children:(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>{let b=a.join("\n");navigator.clipboard?.writeText(b).catch(a=>u9.Rm.error("Copy logs to clipboard failed",a,"terminal-logs-viewer"))},children:"Copy"})}),(0,t.jsx)(b_.Tooltip,{label:"Download logs",withArrow:!0,children:(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>{let b=new Blob([a.join("\n")],{type:"text/plain;charset=utf-8"}),c=URL.createObjectURL(b),d=document.createElement("a");d.href=c,d.download="logs.txt",d.click(),URL.revokeObjectURL(c)},children:"Download"})})]})]}),(0,t.jsx)(G.Box,{ref:m,style:{height:j?Math.max(c,700):c,background:"dark"===n?"#0d1117":"var(--mantine-color-gray-1)",border:"1px solid var(--mantine-color-default-border)",overflow:"hidden",overscrollBehavior:"contain",letterSpacing:0,wordSpacing:0,fontFamily:e},children:(0,t.jsx)(G.Box,{ref:f,style:{padding:8,height:"100%",letterSpacing:0,wordSpacing:0,fontFamily:e,background:"dark"===n?"#0d1117":"#f6f8fa"}})})]})}function vb({task:a,title:b,type:c,priority:d,content:e,disabled:f=!1,onAccept:g}){let[h,i]=(0,u.useState)(!1),[j,k]=(0,u.useState)(!1),[l,m]=(0,u.useState)(null),[n,o]=(0,u.useState)([]),[p,q]=(0,u.useState)(),[r,s]=(0,u.useState)(null),v=(0,u.useRef)(0);bX.i.onExecutionUpdate.useSubscription({executionId:r||""},{enabled:!!r,onData:a=>{let b=a.logs||[],c=v.current||0,d=b.slice(c);if(d.length>0){v.current=b.length;let a=new Date().toLocaleTimeString();o(b=>[...b,...d.map(b=>`[${a}] ${b}`)])}"failed"===a.status&&(q(a.error),i(!1),k(!1),s(null),v.current=0)},onError:a=>{console.error("Execution subscription error:",a)}});let w=bX.i.stopTaskExecution.useMutation({onSuccess:()=>{o(a=>[...a,`[${new Date().toLocaleTimeString()}] Improvement cancelled successfully`])}}),x=bX.i.improveTask.useMutation({onSuccess:a=>{let b={type:a.type,priority:a.priority,content:a.content,title:a.title};g&&g(b),i(!1),k(!1),m(null),s(null),v.current=0},onError:a=>{console.error("Failed to improve task:",a),i(!1);let b=a.message;if(q(b),o(a=>[...a,`[${new Date().toLocaleTimeString()}] Error: ${b}`]),b.includes("Claude CLI is not installed")){let a=b.includes("To use this feature")?b:"Claude CLI is not installed or not found in PATH.";I.notifications.show({color:"red",title:"Claude CLI Missing",message:a})}else I.notifications.show({color:"red",title:"AI Improvement Failed",message:b})}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(H.Button,{size:"xs",variant:"light",leftSection:(0,t.jsx)(u0,{size:14}),onClick:()=>{if(!a||h)return;v.current=0,o([`[${new Date().toLocaleTimeString()}] Starting task improvement...`]),q(void 0),m(null),s(null),v.current=0,i(!0),k(!0);let f=function(a,b={}){let{useUuid:c=!0,includeTimestamp:d=!1,separator:e="_"}=b,f=[a];if(d&&f.push(Date.now().toString()),c)f.push(u6());else if("undefined"!=typeof crypto&&crypto.randomUUID)f.push(crypto.randomUUID());else{let a=Date.now(),b=Math.random().toString(36).substring(2,11),c=Math.random().toString(36).substring(2,7),d=u7=(u7+1)%1e4;f.push(`${a.toString(36)}${b}${c}${d.toString(36)}`)}return f.join(e)}("improve");s(f),o(a=>[...a,`[${new Date().toLocaleTimeString()}] Analyzing current task data...`,`[${new Date().toLocaleTimeString()}] Sending task data to Claude...`]),x.mutate({taskId:a.id,title:b,type:c,priority:d,content:e,executionId:f})},loading:h,disabled:f||h,children:h?"Improving...":"Improve with Vibeman"}),(0,t.jsx)(cG.Modal,{opened:j,onClose:()=>h?null:k(!1),withCloseButton:!h,size:"860px",title:(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(B.Text,{fw:500,children:"Improving Task"}),l?.selectedModel&&(0,t.jsxs)(B.Text,{size:"sm",c:"dimmed",children:["• ",l.selectedModel]})]}),styles:{body:{maxHeight:"calc(100vh - 200px)",overflowY:"auto"}},children:(0,t.jsxs)(y.Stack,{gap:"md",children:[n.length>0&&(0,t.jsx)(va,{lines:n,height:240}),h&&(0,t.jsx)(B.Text,{c:"blue",size:"sm",fw:500,style:{textAlign:"center"},children:"⚡ Processing..."}),p&&!h&&(0,t.jsx)(B.Text,{c:"red",children:p}),(0,t.jsx)("div",{style:{position:"sticky",bottom:"-16px",left:0,right:0,background:"var(--mantine-color-body)",borderTop:"1px solid var(--mantine-color-default-border)",paddingTop:"12px",paddingBottom:"4px"},children:(0,t.jsx)(z.Group,{justify:"flex-end",children:h?(0,t.jsx)(H.Button,{variant:"subtle",color:"red",onClick:()=>{r&&w.mutate({executionId:r}),i(!1),k(!1),s(null),o(a=>[...a,`[${new Date().toLocaleTimeString()}] Improvement cancelled by user`])},children:"Cancel"}):(0,t.jsx)(H.Button,{variant:"subtle",onClick:()=>k(!1),children:"Close"})})})]})})]})}c(93369);let vc={autoQualityChecks:!0,autoCommit:!1,createPR:!1,autoMerge:!1,aiCodeReview:!0,requireHumanApproval:!0,stepByStepMode:!1};function vd(a,b){switch(b.type){case"INITIALIZE":return{...a,...b.payload};case"SET_REQUIRE_HUMAN_APPROVAL":return{...a,requireHumanApproval:b.payload,...b.payload&&{autoCommit:!1,createPR:!1,autoMerge:!1}};case"SET_AUTO_COMMIT":return{...a,autoCommit:b.payload,...!1===b.payload&&{createPR:!1,autoMerge:!1}};case"SET_CREATE_PR":return{...a,createPR:b.payload,...b.payload&&{autoCommit:!0,autoMerge:!1}};case"SET_AUTO_MERGE":return{...a,autoMerge:b.payload,...b.payload&&{autoCommit:!0,createPR:!1,requireHumanApproval:!1}};case"SET_AUTO_QUALITY_CHECKS":return{...a,autoQualityChecks:b.payload};case"SET_AI_CODE_REVIEW":return{...a,aiCodeReview:b.payload};case"SET_STEP_BY_STEP_MODE":return{...a,stepByStepMode:b.payload};default:return a}}var ve=c(54569),vf=c(31954);function vg({label:a,tooltip:b,checked:c,disabled:d=!1,onChange:e}){return(0,t.jsx)(b_.Tooltip,{label:b,withArrow:!0,position:"bottom",children:(0,t.jsxs)(vf.Checkbox.Card,{radius:"sm",checked:c,onChange:e,disabled:d,style:{display:"inline-flex",alignItems:"center",padding:"6px 10px",width:"auto",opacity:d?.5:1},children:[(0,t.jsx)(vf.Checkbox.Indicator,{}),(0,t.jsx)(B.Text,{size:"sm",fw:500,ml:6,children:a})]})})}var vh=E("outline","clock","IconClock",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 7v5l3 3",key:"svg-1"}]]),vi=E("outline","test-pipe","IconTestPipe",[["path",{d:"M20 8.04l-12.122 12.124a2.857 2.857 0 1 1 -4.041 -4.04l12.122 -12.124",key:"svg-0"}],["path",{d:"M7 13h8",key:"svg-1"}],["path",{d:"M19 15l1.5 1.6a2 2 0 1 1 -3 0l1.5 -1.6z",key:"svg-2"}],["path",{d:"M15 3l6 6",key:"svg-3"}]]),vj=E("outline","eye","IconEye",[["path",{d:"M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0",key:"svg-0"}],["path",{d:"M21 12c-2.4 4 -5.4 6 -9 6c-3.6 0 -6.6 -2 -9 -6c2.4 -4 5.4 -6 9 -6c3.6 0 6.6 2 9 6",key:"svg-1"}]]),vk=E("outline","thumb-up","IconThumbUp",[["path",{d:"M7 11v8a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1v-7a1 1 0 0 1 1 -1h3a4 4 0 0 0 4 -4v-1a2 2 0 0 1 4 0v5h3a2 2 0 0 1 2 2l-1 5a2 3 0 0 1 -2 2h-7a3 3 0 0 1 -3 -3",key:"svg-0"}]]),vl=E("outline","check","IconCheck",[["path",{d:"M5 12l5 5l10 -10",key:"svg-0"}]]);let vm={draft:"gray",implementing:"yellow",implemented:"yellow",validating:"orange",validated:"orange","ai-reviewing":"indigo","ai-reviewed":"indigo","awaiting-review":"grape",paused:"gray",approved:"green",merging:"teal",merged:"teal",cleaning:"gray",cleaned:"gray",completed:"teal",failed:"red"},vn={draft:vh,implementing:b1,implemented:b1,validating:vi,validated:vi,"ai-reviewing":vj,"ai-reviewed":vj,"awaiting-review":vj,paused:vh,approved:vk,merging:vl,merged:vl,cleaning:cL,cleaned:cL,completed:vl,failed:ce};var vo=E("outline","player-pause","IconPlayerPause",[["path",{d:"M6 5m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-0"}],["path",{d:"M14 5m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z",key:"svg-1"}]]),vp=c(8306),vq=c(14679),vr=E("outline","coins","IconCoins",[["path",{d:"M9 14c0 1.657 2.686 3 6 3s6 -1.343 6 -3s-2.686 -3 -6 -3s-6 1.343 -6 3z",key:"svg-0"}],["path",{d:"M9 14v4c0 1.656 2.686 3 6 3s6 -1.344 6 -3v-4",key:"svg-1"}],["path",{d:"M3 6c0 1.072 1.144 2.062 3 2.598s4.144 .536 6 0c1.856 -.536 3 -1.526 3 -2.598c0 -1.072 -1.144 -2.062 -3 -2.598s-4.144 -.536 -6 0c-1.856 .536 -3 1.526 -3 2.598z",key:"svg-2"}],["path",{d:"M3 6v10c0 .888 .772 1.45 2 2",key:"svg-3"}],["path",{d:"M3 11c0 .888 .772 1.45 2 2",key:"svg-4"}]]),vs=E("outline","chevron-down","IconChevronDown",[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]]),vt=E("outline","chevron-right","IconChevronRight",[["path",{d:"M9 6l6 6l-6 6",key:"svg-0"}]]);function vu(a){if(!a||!isFinite(a)||a<0)return"n/a";let b=Math.floor(a/1e3),c=Math.floor(b/3600),d=Math.floor(b%3600/60),e=b%60;return c>0?`${c}h ${d}m ${e}s`:d>0?`${d}m ${e}s`:`${e}s`}let vv=function({executionId:a}){let b=bX.i.getTaskExecutionStatus.useQuery({executionId:a},{enabled:!!a,refetchOnWindowFocus:!1}),[c,d]=w().useState(!1),e=bX.i.getTaskExecutionLogs.useQuery({executionId:a},{enabled:!!a,refetchOnWindowFocus:!1,refetchInterval:()=>!c&&1e3}),[f,g]=w().useState(null),h=!c;bX.i.onExecutionUpdate.useSubscription(a?{executionId:a}:{},{enabled:!!a&&h,onData:a=>{a?.logs&&g(a.logs);let b=a?.status;b&&("completed"===b||"failed"===b||"cancelled"===b)&&d(!0)}}),w().useRef(!1);let i=b.data,j=i?.usage,k=(e.data?.logs||[]).map(a=>"string"==typeof a?a:a.message),l=Array.isArray(b.data?.logs)?b.data.logs.map(a=>"string"==typeof a?a:a.message):[],m=f&&f.length?f:k.length?k:l,n=(()=>{try{let a=i?.startTime?new Date(i.startTime).getTime():void 0,b=i?.endTime?new Date(i.endTime).getTime():Date.now();return a?Math.max(0,b-a):void 0}catch{return}})();return(0,t.jsxs)(y.Stack,{gap:6,mt:6,children:[!!j&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Provider: ",i?.provider||"n/a"," • Tokens: ",j.totalTokens??0," • Cost:"," ",void 0!==j.cost?`$${j.cost.toFixed(4)}`:"n/a"]}),!!n&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Duration: ",vu(n)]}),m.length>0?(0,t.jsx)(va,{lines:m,height:200}):(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:h?"Waiting for logs…":"No logs available."})]})};var vw=c(44501);function vx({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.continueWorkflow.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{size:"xs",variant:"filled",onClick:()=>c.mutate({workflowId:a}),loading:c.isPending,children:"Continue"})}function vy({workflowId:a,phase:b}){let c=bX.i.useUtils(),d=bX.i.rerunFromPhase.useMutation({onSuccess:()=>c.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:()=>vw.jQ.openConfirmModal({title:"Rerun from this step",centered:!0,labels:{confirm:"Rerun",cancel:"Cancel"},children:(0,t.jsx)(B.Text,{size:"sm",children:"This will reset all later steps and logs. Continue?"}),onConfirm:()=>d.mutate({workflowId:a,phase:b})}),loading:d.isPending,children:"Rerun From Here"})}function vz({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.pauseWorkflow.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{disabled:!0,size:"xs",variant:"subtle",onClick:()=>c.mutate({workflowId:a}),loading:c.isPending,children:"Pause"})}function vA({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.skipToNextPhase.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{disabled:!0,size:"xs",variant:"subtle",onClick:()=>c.mutate({workflowId:a}),loading:c.isPending,children:"Skip To Next"})}function vB({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.approveAndContinueReview.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})}),d=bX.i.checkWorktreeStatus.useMutation();return(0,t.jsx)(H.Button,{size:"xs",variant:"filled",color:"green",onClick:async()=>{try{let b=await d.mutateAsync({workflowId:a});if(!b.clean){let e=b.uncommittedFiles?.length?`
142
142
 
143
- ${b.uncommittedFiles.join("\n")}`:"";vw.jQ.openConfirmModal({title:"Uncommitted changes detected",centered:!0,labels:{confirm:"I have committed, continue",cancel:"Cancel"},children:(0,t.jsxs)(B.Text,{size:"sm",children:["Please commit or stash your local changes before approving.",e?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("br",{}),(0,t.jsx)("br",{}),(0,t.jsx)("strong",{children:"Files:"}),(0,t.jsx)("br",{}),b.uncommittedFiles.join(", ")]}):null]}),onConfirm:async()=>{try{let b=await d.mutateAsync({workflowId:a});if(!b.clean)return void I.notifications.show({color:"red",title:"Still has uncommitted changes",message:b.uncommittedFiles?.join("\n")||"Please commit or stash changes and try again."});await c.mutateAsync({workflowId:a})}catch(b){let a=b?.message||"Failed to approve and continue";I.notifications.show({color:"red",title:"Action failed",message:a})}}});return}await c.mutateAsync({workflowId:a})}catch(b){try{await c.mutateAsync({workflowId:a})}catch(b){let a=b?.message||"Failed to approve and continue";I.notifications.show({color:"red",title:"Action failed",message:a})}}},loading:c.isPending||d.isPending,children:"Approve & Continue"})}function vC({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.markCompleted.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",color:"gray",disabled:!0,onClick:()=>c.mutate({workflowId:a}),loading:c.isPending,children:"Mark as Completed"})}function vD({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.runMerge.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:()=>c.mutate({workflowId:a}),loading:c.isPending,children:"Run Merge"})}function vE({workflowId:a}){let b=bX.i.runCleanup?.useMutation?.()||{mutate:()=>{},isPending:!1};return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:()=>b.mutate({workflowId:a}),loading:b.isPending,children:"Run Cleanup"})}function vF({taskId:a}){let b=bX.i.getWorktreeInfo.useQuery(a?{taskId:a}:void 0,{enabled:!!a,refetchOnWindowFocus:!1,staleTime:3e4}),c=bX.i.openInEditor.useMutation(),d=b.data?.path;return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:async()=>{if(d)try{await c.mutateAsync({worktreePath:d})}catch(a){console.error("Failed to open editor:",a)}},disabled:!d,children:"Open in Editor"})}function vG({taskId:a}){let b=bX.i.getWorktreeInfo.useQuery(a?{taskId:a}:void 0,{enabled:!!a,refetchOnWindowFocus:!1,staleTime:3e4}),c=bX.i.openInTerminal?.useMutation?.()||{mutateAsync:async()=>{},isPending:!1},d=b.data?.path,e=c.isPending;return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:async()=>{if(d)try{await c.mutateAsync({worktreePath:d})}catch(a){console.error("Failed to open Terminal:",a)}},disabled:!d,loading:e,children:"Open in Terminal"})}function vH({workflow:a}){let[b,c]=w().useState({}),d=!!a?.metadata?.stepByStepMode;console.log("workflow",a,d);let e=(0,u.useMemo)(()=>(a?.timeline||[]).slice(),[a?.timeline]),f=(0,u.useMemo)(()=>e?.length?e.reduce((a,b)=>(b?.usage&&(a.tokens+=b.usage.totalTokens||0,"number"==typeof b.usage.cost&&(a.cost+=b.usage.cost)),a),{tokens:0,cost:0}):{tokens:0,cost:0},[e]),g=(0,u.useMemo)(()=>{try{if(!a)return;let b=a.startTime?new Date(a.startTime).getTime():void 0,c=a.endTime?new Date(a.endTime).getTime():new Date(a.lastUpdatedAt||Date.now()).getTime();return b?Math.max(0,c-b):void 0}catch{return}},[a]),h=Math.max(0,e.reduce((a,b,c)=>b.placeholder?a:c,-1));return a?(0,t.jsxs)(b$.Card,{withBorder:!0,padding:"md",radius:"md",children:[(0,t.jsxs)(y.Stack,{mb:"lg",gap:0,children:[(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsx)(z.Group,{children:(0,t.jsx)(A.Title,{order:5,children:"Timeline"})}),(0,t.jsxs)(z.Group,{gap:8,children:[(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>c(()=>(e||[]).reduce((a,b)=>(a[b.id]=!0,a),{})),children:"Expand All"}),(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>c(()=>(e||[]).reduce((a,b)=>(a[b.id]=!1,a),{})),children:"Collapse All"})]})]}),(0,t.jsx)(z.Group,{children:a&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Total: ",f.tokens," tok • ",f.cost>0?`$${f.cost.toFixed(4)}`:"n/a",void 0!==g?` • Runtime: ${vu(g)}`:"",a?` • ${a.id}`:""]})})]}),(0,t.jsx)(vq.Timeline,{active:h,bulletSize:18,lineWidth:2,children:e.map((f,g)=>{let h=vn[f.phase],i=f.startTime,j=new Set(["implementing","validating","ai-reviewing","awaiting-review","approved","merging","cleaning"]),k=!!f.executionId,l=!!a&&a.phase===f.phase,m=new Set(["validating","ai-reviewing","approved","merging","cleaning"]),n=!!(d&&m.has(f.phase)),o=!!(l&&n&&!k),p=!!a&&!f.placeholder&&l&&j.has(f.phase)&&("implementing"===f.phase||!n||k),q="SUCCESS";"failed"===f.phase?q="FAILED":"paused"===f.phase?q="INACTIVE":p?q="RUNNING":o||f.placeholder||o?q="INACTIVE":"validating"===f.phase&&a&&a.qualityResults?q=a.qualityResults.overall?"SUCCESS":"FAILED":a&&"failed"===a.phase&&a.lastPhase===f.phase&&(q="FAILED");let r=p||"FAILED"===q,s=b[f.id]??r,u=()=>c(a=>({...a,[f.id]:!(a[f.id]??s)})),v=f.endTime||e[g+1]?.startTime||(a?a.endTime:void 0)||(a?a.lastUpdatedAt:void 0),w=(()=>{try{if(!i||!v)return"";let a=new Date(v).getTime()-new Date(i).getTime();return a>0?`• ${vu(a)}`:""}catch{return""}})();return(0,t.jsxs)(vq.Timeline.Item,{bullet:(0,t.jsx)(h,{size:12}),color:vm[f.phase],children:[(0,t.jsxs)(z.Group,{justify:"space-between",align:"center",wrap:"nowrap",onClick:()=>{f.placeholder||u()},role:"button",tabIndex:0,onKeyDown:a=>{f.placeholder||("Enter"===a.key||" "===a.key)&&(a.preventDefault(),u())},style:{cursor:f.placeholder?"default":"pointer"},"aria-expanded":s,"aria-controls":`timeline-panel-${f.id}`,"data-testid":`timeline-header-${f.id}`,children:[(0,t.jsxs)(z.Group,{gap:8,align:"center",wrap:"nowrap",children:[(0,t.jsx)(B.Text,{size:"sm",fw:600,c:f.placeholder?"dimmed":void 0,children:f.label}),!["paused","draft"].includes(f.phase)&&(0,t.jsx)(bZ.Badge,{size:"xs",variant:"light",color:"RUNNING"===q?"yellow":"FAILED"===q?"red":"INACTIVE"===q?"gray":"green",children:q}),!f.placeholder&&i&&(0,t.jsx)(b_.Tooltip,{label:i,withArrow:!0,children:(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:[function(a){if(!a)return"";try{return new Date(a).toLocaleString()}catch{return String(a)}}(i)," ",w]})}),f.usage&&(0,t.jsxs)(z.Group,{gap:6,children:[(0,t.jsx)(vr,{size:12}),(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:[f.usage.totalTokens??0," tok",void 0!==f.usage.cost?` • $${f.usage.cost.toFixed(4)}`:" • n/a"]})]})]}),(0,t.jsx)(C.ActionIcon,{size:"sm",variant:"subtle",onClick:a=>{a.stopPropagation(),u()},"aria-label":s?"Collapse":"Expand",disabled:f.placeholder,children:s?(0,t.jsx)(vs,{size:16}):(0,t.jsx)(vt,{size:16})})]}),s&&!f.placeholder&&(0,t.jsxs)("div",{id:`timeline-panel-${f.id}`,children:[f.attempt&&f.attempt>1||f.reason?(0,t.jsxs)(y.Stack,{gap:4,mt:6,children:[f.attempt&&f.attempt>1&&(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:(0,t.jsxs)("strong",{children:["Retry #",f.attempt]})}),f.reason&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:[(0,t.jsx)("strong",{children:"Reason:"})," ",f.reason]})]}):null,(()=>{let b=a?.executionIds?.[f.phase],c=b&&b.length?b[b.length-1]:void 0,d=f.executionId||c;return d?(0,t.jsx)(vv,{executionId:d}):null})(),d&&a?.id&&!p&&(0,t.jsx)(z.Group,{gap:6,mt:6,children:["completed"].includes(f.phase)?null:(0,t.jsx)(vx,{workflowId:a.id})}),a?.id&&!f.placeholder&&!p&&!["failed","paused","awaiting-review","approved","merged","completed","draft"].includes(f.phase)&&(0,t.jsx)(z.Group,{gap:6,mt:6,children:(0,t.jsx)(vy,{workflowId:a.id,phase:f.phase})}),a?.id&&p&&(0,t.jsx)("div",{style:{marginTop:6},children:(()=>{switch(f.phase){case"implementing":case"validating":return(0,t.jsxs)(z.Group,{gap:6,children:[(0,t.jsx)(vz,{workflowId:a.id}),(0,t.jsx)(vA,{workflowId:a.id})]});case"ai-reviewing":return(0,t.jsx)(z.Group,{gap:6,children:(0,t.jsx)(vA,{workflowId:a.id})});case"awaiting-review":return(0,t.jsxs)(z.Group,{gap:6,children:[(0,t.jsx)(vB,{workflowId:a.id}),(0,t.jsx)(vC,{workflowId:a.id}),(0,t.jsx)(vG,{taskId:a.taskId}),(0,t.jsx)(vF,{taskId:a.taskId})]});case"merging":return(0,t.jsx)(z.Group,{gap:6,children:(0,t.jsx)(vD,{workflowId:a.id})});case"cleaning":return(0,t.jsx)(z.Group,{gap:6,children:(0,t.jsx)(vE,{workflowId:a.id})});default:return null}})()})]})]},f.id)})})]}):(0,t.jsx)(b$.Card,{withBorder:!0,padding:"md",radius:"md",children:(0,t.jsx)(B.Text,{children:"Please start vibing to see the timeline"})})}function vI({task:a,disableOptions:b}){let[d,e]=(0,u.useState)(null),f=bX.i.useUtils(),g=d??void 0,h=function(a){let[b,c]=(0,u.useReducer)(vd,vc),d=bX.i.updateWorkflowOptions.useMutation(),e=(0,u.useCallback)(async b=>{a&&await d.mutateAsync({workflowId:a,config:b})},[a,d]),f=(0,u.useCallback)(a=>{let d={type:"SET_REQUIRE_HUMAN_APPROVAL",payload:a};c(d),e(vd(b,d))},[b,e]),g=(0,u.useCallback)(a=>{let d={type:"SET_AUTO_COMMIT",payload:a};c(d),e(vd(b,d))},[b,e]),h=(0,u.useCallback)(a=>{let d={type:"SET_CREATE_PR",payload:a};c(d),e(vd(b,d))},[b,e]),i=(0,u.useCallback)(a=>{let d={type:"SET_AUTO_MERGE",payload:a};c(d),e(vd(b,d))},[b,e]),j=(0,u.useCallback)(a=>{let d={type:"SET_AUTO_QUALITY_CHECKS",payload:a};c(d),e(vd(b,d))},[b,e]),k=(0,u.useCallback)(a=>{let d={type:"SET_AI_CODE_REVIEW",payload:a};c(d),e(vd(b,d))},[b,e]),l=(0,u.useCallback)(a=>{let d={type:"SET_STEP_BY_STEP_MODE",payload:a};c(d),e(vd(b,d))},[b,e]);return{options:b,setRequireHumanApproval:f,setAutoCommit:g,setCreatePR:h,setAutoMerge:i,setAutoQualityChecks:j,setAiCodeReview:k,setStepByStepMode:l,initialize:(0,u.useCallback)(a=>{c({type:"INITIALIZE",payload:a})},[]),isUpdating:d.isPending}}(g),{autoQualityChecks:i,autoCommit:j,createPR:k,autoMerge:l,aiCodeReview:m,requireHumanApproval:n,stepByStepMode:o}=h.options,p=bX.i.getWorkflow.useQuery(g?{workflowId:g}:vp.hT,{enabled:!!g,refetchOnWindowFocus:!1}),q=p?.data;bX.i.getLatestWorkflowByTaskId.useQuery({taskId:a.id},{enabled:!g&&!!a.id,refetchOnWindowFocus:!1,staleTime:15e3}),bX.i.onTaskWorkflowEvents.useSubscription({taskId:a.id},{onData:a=>{let b=a?.workflow,c=a?.workflowId||b?.id;if(b&&c){try{f.getWorkflow.setData({workflowId:c},b)}catch(a){u9.Rm.error("Error applying task workflow event snapshot",a,"workflow-review")}!g&&c&&e(c)}a?.type==="deleted"&&g&&c===g&&e(null)},onError:a=>{console.error("WorkflowReview workflow subscription error:",a)}});let{logs:r,clearLogs:s}=function(a){let[b,c]=(0,u.useState)([]),[d,e]=(0,u.useState)([]),[f,g]=(0,u.useState)([]),h=(0,u.useRef)(0),i=(0,u.useRef)(0),j=(a?.executionIds?.implementing||[]).slice(-1)[0],k=(a?.executionIds?.merging||[]).slice(-1)[0],l=bX.i.getTaskExecutionLogs.useQuery({executionId:j||""},{enabled:!!j,refetchOnWindowFocus:!1,refetchInterval:a?.phase==="implementing"&&!!j&&!b.length&&1e3}),m=l?.data?.logs,n=(0,u.useMemo)(()=>m??[],[m]),{promptLines:o,systemPromptLines:p,rerunLines:q}=(()=>{try{let a,b=(n||[]).find(a=>a?.data?.prompt),c=b?.data?.prompt?String(b.data.prompt):void 0;b?.data?.appendSystemPrompt?a=String(b.data.appendSystemPrompt):b?.data?.options?.appendSystemPrompt&&(a=String(b.data.options.appendSystemPrompt));let d=b?.data?.rerunContext?`Reason: ${b.data.rerunContext.reason||""}
143
+ ${b.uncommittedFiles.join("\n")}`:"";vw.jQ.openConfirmModal({title:"Uncommitted changes detected",centered:!0,labels:{confirm:"I have committed, continue",cancel:"Cancel"},children:(0,t.jsxs)(B.Text,{size:"sm",children:["Please commit or stash your local changes before approving.",e?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("br",{}),(0,t.jsx)("br",{}),(0,t.jsx)("strong",{children:"Files:"}),(0,t.jsx)("br",{}),b.uncommittedFiles.join(", ")]}):null]}),onConfirm:async()=>{try{let b=await d.mutateAsync({workflowId:a});if(!b.clean)return void I.notifications.show({color:"red",title:"Still has uncommitted changes",message:b.uncommittedFiles?.join("\n")||"Please commit or stash changes and try again."});await c.mutateAsync({workflowId:a})}catch(b){let a=b?.message||"Failed to approve and continue";I.notifications.show({color:"red",title:"Action failed",message:a})}}});return}await c.mutateAsync({workflowId:a})}catch(b){try{await c.mutateAsync({workflowId:a})}catch(b){let a=b?.message||"Failed to approve and continue";I.notifications.show({color:"red",title:"Action failed",message:a})}}},loading:c.isPending||d.isPending,children:"Approve & Continue"})}function vC({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.markCompleted.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",color:"gray",disabled:!0,onClick:()=>c.mutate({workflowId:a}),loading:c.isPending,children:"Mark as Completed"})}function vD({workflowId:a}){let b=bX.i.useUtils(),c=bX.i.runMerge.useMutation({onSuccess:()=>b.getWorkflow.invalidate({workflowId:a}).catch(()=>{})});return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:()=>c.mutate({workflowId:a}),loading:c.isPending,children:"Run Merge"})}function vE({workflowId:a}){let b=bX.i.runCleanup?.useMutation?.()||{mutate:()=>{},isPending:!1};return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:()=>b.mutate({workflowId:a}),loading:b.isPending,children:"Run Cleanup"})}function vF({taskId:a}){let b=bX.i.getWorktreeInfo.useQuery(a?{taskId:a}:void 0,{enabled:!!a,refetchOnWindowFocus:!1,staleTime:3e4}),c=bX.i.openInEditor.useMutation(),d=b.data?.path;return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:async()=>{if(d)try{await c.mutateAsync({worktreePath:d})}catch(a){console.error("Failed to open editor:",a)}},disabled:!d,children:"Open in Editor"})}function vG({taskId:a}){let b=bX.i.getWorktreeInfo.useQuery(a?{taskId:a}:void 0,{enabled:!!a,refetchOnWindowFocus:!1,staleTime:3e4}),c=bX.i.openInTerminal?.useMutation?.()||{mutateAsync:async()=>{},isPending:!1},d=b.data?.path,e=c.isPending;return(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:async()=>{if(d)try{await c.mutateAsync({worktreePath:d})}catch(a){console.error("Failed to open Terminal:",a)}},disabled:!d,loading:e,children:"Open in Terminal"})}function vH({workflow:a}){let[b,c]=w().useState({}),d=!!a?.metadata?.stepByStepMode;console.log("workflow",a,d);let e=(0,u.useMemo)(()=>(a?.timeline||[]).slice(),[a?.timeline]),f=(0,u.useMemo)(()=>e?.length?e.reduce((a,b)=>(b?.usage&&(a.tokens+=b.usage.totalTokens||0,"number"==typeof b.usage.cost&&(a.cost+=b.usage.cost)),a),{tokens:0,cost:0}):{tokens:0,cost:0},[e]),g=(0,u.useMemo)(()=>{try{if(!a)return;let b=a.startTime?new Date(a.startTime).getTime():void 0,c=a.endTime?new Date(a.endTime).getTime():new Date(a.lastUpdatedAt||Date.now()).getTime();return b?Math.max(0,c-b):void 0}catch{return}},[a]),h=Math.max(0,e.reduce((a,b,c)=>b.placeholder?a:c,-1));return a?(0,t.jsxs)(b$.Card,{withBorder:!0,padding:"md",radius:"md",children:[(0,t.jsxs)(y.Stack,{mb:"lg",gap:0,children:[(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsx)(z.Group,{children:(0,t.jsx)(A.Title,{order:5,children:"Timeline"})}),(0,t.jsxs)(z.Group,{gap:8,children:[(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>c(()=>(e||[]).reduce((a,b)=>(a[b.id]=!0,a),{})),children:"Expand All"}),(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>c(()=>(e||[]).reduce((a,b)=>(a[b.id]=!1,a),{})),children:"Collapse All"})]})]}),(0,t.jsx)(z.Group,{children:a&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Total: ",f.tokens," tok • ",f.cost>0?`$${f.cost.toFixed(4)}`:"n/a",void 0!==g?` • Runtime: ${vu(g)}`:"",a?` • ${a.id}`:""]})})]}),(0,t.jsx)(vq.Timeline,{active:h,bulletSize:18,lineWidth:2,children:e.map((f,g)=>{let h=vn[f.phase],i=f.startTime,j=new Set(["implementing","validating","ai-reviewing","awaiting-review","approved","merging","cleaning"]),k=!!f.executionId,l=!!a&&a.phase===f.phase,m=new Set(["validating","ai-reviewing","approved","merging","cleaning"]),n=!!(d&&m.has(f.phase)),o=!!(l&&n&&!k),p=!!a&&!f.placeholder&&l&&j.has(f.phase)&&("implementing"===f.phase||!n||k),q="SUCCESS";"failed"===f.phase?q="FAILED":"paused"===f.phase?q="INACTIVE":p?q="RUNNING":o||f.placeholder||o?q="INACTIVE":"validating"===f.phase&&a&&a.qualityResults?q=a.qualityResults.overall?"SUCCESS":"FAILED":a&&"failed"===a.phase&&a.lastPhase===f.phase&&(q="FAILED");let r=p||"FAILED"===q,s=b[f.id]??r,u=()=>c(a=>({...a,[f.id]:!(a[f.id]??s)})),v=f.endTime||e[g+1]?.startTime||(a?a.endTime:void 0)||(a?a.lastUpdatedAt:void 0),w=(()=>{try{if(!i||!v)return"";let a=new Date(v).getTime()-new Date(i).getTime();return a>0?`• ${vu(a)}`:""}catch{return""}})();return(0,t.jsxs)(vq.Timeline.Item,{bullet:(0,t.jsx)(h,{size:12}),color:vm[f.phase],children:[(0,t.jsxs)(z.Group,{justify:"space-between",align:"center",wrap:"nowrap",onClick:()=>{f.placeholder||u()},role:"button",tabIndex:0,onKeyDown:a=>{f.placeholder||("Enter"===a.key||" "===a.key)&&(a.preventDefault(),u())},style:{cursor:f.placeholder?"default":"pointer"},"aria-expanded":s,"aria-controls":`timeline-panel-${f.id}`,"data-testid":`timeline-header-${f.id}`,children:[(0,t.jsxs)(z.Group,{gap:8,align:"center",wrap:"nowrap",children:[(0,t.jsx)(B.Text,{size:"sm",fw:600,c:f.placeholder?"dimmed":void 0,children:f.label}),!["paused","draft"].includes(f.phase)&&(0,t.jsx)(bZ.Badge,{size:"xs",variant:"light",color:"RUNNING"===q?"yellow":"FAILED"===q?"red":"INACTIVE"===q?"gray":"green",children:q}),!f.placeholder&&i&&(0,t.jsx)(b_.Tooltip,{label:i,withArrow:!0,children:(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:[function(a){if(!a)return"";try{return new Date(a).toLocaleString()}catch{return String(a)}}(i)," ",w]})}),f.usage&&(0,t.jsxs)(z.Group,{gap:6,children:[(0,t.jsx)(vr,{size:12}),(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:[f.usage.totalTokens??0," tok",void 0!==f.usage.cost?` • $${f.usage.cost.toFixed(4)}`:" • n/a"]})]})]}),(0,t.jsx)(C.ActionIcon,{size:"sm",variant:"subtle",onClick:a=>{a.stopPropagation(),u()},"aria-label":s?"Collapse":"Expand",disabled:f.placeholder,children:s?(0,t.jsx)(vs,{size:16}):(0,t.jsx)(vt,{size:16})})]}),s&&!f.placeholder&&(0,t.jsxs)("div",{id:`timeline-panel-${f.id}`,children:[f.attempt&&f.attempt>1||f.reason?(0,t.jsxs)(y.Stack,{gap:4,mt:6,children:[f.attempt&&f.attempt>1&&(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:(0,t.jsxs)("strong",{children:["Retry #",f.attempt]})}),f.reason&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:[(0,t.jsx)("strong",{children:"Reason:"})," ",f.reason]})]}):null,(()=>{let b=a?.executionIds?.[f.phase],c=b&&b.length?b[b.length-1]:void 0,d=f.executionId||c;return d?(0,t.jsx)(vv,{executionId:d}):null})(),d&&a?.id&&!p&&(0,t.jsx)(z.Group,{gap:6,mt:6,children:["completed"].includes(f.phase)?null:(0,t.jsx)(vx,{workflowId:a.id})}),a?.id&&!f.placeholder&&!p&&!["failed","paused","approved","merged","completed","draft"].includes(f.phase)&&(0,t.jsx)(z.Group,{gap:6,mt:6,children:(0,t.jsx)(vy,{workflowId:a.id,phase:f.phase})}),a?.id&&p&&(0,t.jsx)("div",{style:{marginTop:6},children:(()=>{switch(f.phase){case"implementing":case"validating":return(0,t.jsxs)(z.Group,{gap:6,children:[(0,t.jsx)(vz,{workflowId:a.id}),(0,t.jsx)(vA,{workflowId:a.id})]});case"ai-reviewing":return(0,t.jsx)(z.Group,{gap:6,children:(0,t.jsx)(vA,{workflowId:a.id})});case"awaiting-review":return(0,t.jsxs)(z.Group,{gap:6,children:[(0,t.jsx)(vB,{workflowId:a.id}),(0,t.jsx)(vC,{workflowId:a.id}),(0,t.jsx)(vG,{taskId:a.taskId}),(0,t.jsx)(vF,{taskId:a.taskId})]});case"merging":return(0,t.jsx)(z.Group,{gap:6,children:(0,t.jsx)(vD,{workflowId:a.id})});case"cleaning":return(0,t.jsx)(z.Group,{gap:6,children:(0,t.jsx)(vE,{workflowId:a.id})});default:return null}})()})]})]},f.id)})})]}):(0,t.jsx)(b$.Card,{withBorder:!0,padding:"md",radius:"md",children:(0,t.jsx)(B.Text,{children:"Please start vibing to see the timeline"})})}function vI({task:a,disableOptions:b}){let[d,e]=(0,u.useState)(null),f=bX.i.useUtils(),g=d??void 0,h=function(a){let[b,c]=(0,u.useReducer)(vd,vc),d=bX.i.updateWorkflowOptions.useMutation(),e=(0,u.useCallback)(async b=>{a&&await d.mutateAsync({workflowId:a,config:b})},[a,d]),f=(0,u.useCallback)(a=>{let d={type:"SET_REQUIRE_HUMAN_APPROVAL",payload:a};c(d),e(vd(b,d))},[b,e]),g=(0,u.useCallback)(a=>{let d={type:"SET_AUTO_COMMIT",payload:a};c(d),e(vd(b,d))},[b,e]),h=(0,u.useCallback)(a=>{let d={type:"SET_CREATE_PR",payload:a};c(d),e(vd(b,d))},[b,e]),i=(0,u.useCallback)(a=>{let d={type:"SET_AUTO_MERGE",payload:a};c(d),e(vd(b,d))},[b,e]),j=(0,u.useCallback)(a=>{let d={type:"SET_AUTO_QUALITY_CHECKS",payload:a};c(d),e(vd(b,d))},[b,e]),k=(0,u.useCallback)(a=>{let d={type:"SET_AI_CODE_REVIEW",payload:a};c(d),e(vd(b,d))},[b,e]),l=(0,u.useCallback)(a=>{let d={type:"SET_STEP_BY_STEP_MODE",payload:a};c(d),e(vd(b,d))},[b,e]);return{options:b,setRequireHumanApproval:f,setAutoCommit:g,setCreatePR:h,setAutoMerge:i,setAutoQualityChecks:j,setAiCodeReview:k,setStepByStepMode:l,initialize:(0,u.useCallback)(a=>{c({type:"INITIALIZE",payload:a})},[]),isUpdating:d.isPending}}(g),{autoQualityChecks:i,autoCommit:j,createPR:k,autoMerge:l,aiCodeReview:m,requireHumanApproval:n,stepByStepMode:o}=h.options,p=bX.i.getWorkflow.useQuery(g?{workflowId:g}:vp.hT,{enabled:!!g,refetchOnWindowFocus:!1}),q=p?.data;bX.i.getLatestWorkflowByTaskId.useQuery({taskId:a.id},{enabled:!g&&!!a.id,refetchOnWindowFocus:!1,staleTime:15e3}),bX.i.onTaskWorkflowEvents.useSubscription({taskId:a.id},{onData:a=>{let b=a?.workflow,c=a?.workflowId||b?.id;if(b&&c){try{f.getWorkflow.setData({workflowId:c},b)}catch(a){u9.Rm.error("Error applying task workflow event snapshot",a,"workflow-review")}!g&&c&&e(c)}a?.type==="deleted"&&g&&c===g&&e(null)},onError:a=>{console.error("WorkflowReview workflow subscription error:",a)}});let{logs:r,clearLogs:s}=function(a){let[b,c]=(0,u.useState)([]),[d,e]=(0,u.useState)([]),[f,g]=(0,u.useState)([]),h=(0,u.useRef)(0),i=(0,u.useRef)(0),j=(a?.executionIds?.implementing||[]).slice(-1)[0],k=(a?.executionIds?.merging||[]).slice(-1)[0],l=bX.i.getTaskExecutionLogs.useQuery({executionId:j||""},{enabled:!!j,refetchOnWindowFocus:!1,refetchInterval:a?.phase==="implementing"&&!!j&&!b.length&&1e3}),m=l?.data?.logs,n=(0,u.useMemo)(()=>m??[],[m]),{promptLines:o,systemPromptLines:p,rerunLines:q}=(()=>{try{let a,b=(n||[]).find(a=>a?.data?.prompt),c=b?.data?.prompt?String(b.data.prompt):void 0;b?.data?.appendSystemPrompt?a=String(b.data.appendSystemPrompt):b?.data?.options?.appendSystemPrompt&&(a=String(b.data.options.appendSystemPrompt));let d=b?.data?.rerunContext?`Reason: ${b.data.rerunContext.reason||""}
144
144
  Attempt: ${b.data.rerunContext.attempt??""}
145
145
  PrevExec: ${b.data.rerunContext.previousExecutionId||""}
146
146
  FailurePhase: ${b.data.rerunContext.failurePhase||""}`:void 0;return{promptLines:c?["--- Prompt ---",c,"--- End Prompt ---"]:[],systemPromptLines:a?["--- System Prompt ---",a,"--- End System Prompt ---"]:[],rerunLines:d?["--- Rerun Context ---",d,"--- End Rerun Context ---"]:[]}}catch{return{promptLines:[],systemPromptLines:[],rerunLines:[]}}})(),r=bX.i.getTaskExecutionLogs.useQuery({executionId:k||""},{enabled:!!k,refetchOnWindowFocus:!1,refetchInterval:a?.phase==="merging"&&!!k&&!d.length&&1e3}),s=r?.data?.logs,t=(0,u.useMemo)(()=>s??[],[s]),v=a?.phase,w="implementing"===v&&!!j,x="merging"===v&&!!k;bX.i.onExecutionUpdate.useSubscription(j?{executionId:j}:{},{enabled:!!j&&w,onData:a=>{if(!a?.logs)return;let b=Date.now();b-h.current<150||(h.current=b,c(a.logs.slice(-1e4)))}}),bX.i.onExecutionUpdate.useSubscription(k?{executionId:k}:{},{enabled:!!k&&x,onData:a=>{if(!a?.logs)return;let b=Date.now();b-i.current<150||(i.current=b,e(a.logs.slice(-1e4)))}});let y=(0,u.useMemo)(()=>{let b=a?.qualityResults;if(!b)return"";let c=[];return["tests","linting","typecheck","build"].forEach(a=>{let d=b.details?.[a],e=b.outputs?.[a];e&&c.push(`== ${a.toUpperCase()} : ${d?"PASSED":"FAILED"} ==
147
- ${e}`)}),c.join("\n\n")},[a?.qualityResults]),z=(0,u.useCallback)(()=>{c([]),g([]),e([])},[]),A=(0,u.useCallback)(()=>{c([])},[]),B=(0,u.useCallback)(()=>{g([])},[]),C=(0,u.useCallback)(()=>{e([])},[]);return{logs:(0,u.useMemo)(()=>{let a=n.flatMap(a=>"string"==typeof a?[a]:[a.message]),c=t.flatMap(a=>"string"==typeof a?[a]:[a.message]),e=[...p,...o,...q];return{implementation:b.length?e.length?[...e,...b]:b:e.length?[...e,...a]:a,validation:f.length?f:y?y.split("\n"):["No validation logs yet."],merge:d.length?d:c}},[b,n,o,p,q,f,y,d,t]),clearLogs:z,clearImplementationLogs:A,clearValidationLogs:B,clearMergeLogs:C}}(q),v=bX.i.reviewCode.useMutation(),w=bX.i.listProviders.useQuery(void 0,{refetchOnWindowFocus:!1,staleTime:6e4}),x=bX.i.getRoutingPolicy.useQuery(void 0,{refetchOnWindowFocus:!1,staleTime:6e4}),[C,D]=(0,u.useState)({}),E=q?.metadata?.aiReviewResult,F=v?.data||E,G=bX.i.getWorktreeInfo.useQuery({taskId:a.id},{enabled:!!a.id,refetchOnWindowFocus:!1,staleTime:3e4}),I=G?.data,J=bX.i.resetWorkflow.useMutation(),K=bX.i.moveTask.useMutation({onSuccess:async()=>{await f.listTasks.invalidate()}}),L=bX.i.pauseWorkflow.useMutation(),M=bX.i.continueWorkflow.useMutation(),N=bX.i.startWorkflow.useMutation({onSuccess:()=>{G?.refetch()}});(0,u.useRef)(null);let O=bX.i.updateWorkflowOptions.useMutation(),P=async()=>{try{if(S||T)return;if(s(),"in-progress"!==a.status)try{await K.mutateAsync({id:a.id,status:"in-progress"})}catch(a){console.error("Failed to move task to in-progress:",a)}if(g){if(Object.keys(C||{}).length>0)try{await O.mutateAsync({workflowId:g,config:{aiRoutingOverrides:C}})}catch(a){console.error("Failed to apply routing overrides to workflow:",a)}try{await M.mutateAsync({workflowId:g})}catch(c){u9.Rm.warn("continueWorkflow failed; starting a new workflow instead:",c,"workflow-review");let b=await N.mutateAsync?.({taskId:a.id,config:{...h.options,aiRoutingOverrides:C}});b?.workflowId&&e(b.workflowId)}}else await N.mutateAsync?.({taskId:a.id,config:{...h.options,aiRoutingOverrides:C}})}catch(a){console.error("Failed to start vibing workflow:",a)}},Q=(q?.phase==="failed"&&q?.metadata?.requireHumanApproval&&F&&q?.error?.includes("AI code review score too low")?"awaiting-review":q?.phase)||"draft",R=!!N?.isPending||!!M?.isPending,S=!!g&&["merged","completed","approved"].includes(Q),T=!!g&&["implementing","validating","ai-reviewing","awaiting-review","merging","cleaning"].includes(Q),U="paused"===Q,V=(!g||!T)&&!R,W=!g||!T,X=bX.i.rerunFromPhase.useMutation(),Y=!W||S||T||U;return(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsx)(A.Title,{order:4,children:"Vibing Parameters"}),(0,t.jsxs)(bY.Paper,{p:"xs",withBorder:!0,children:[(0,t.jsx)(z.Group,{gap:"xs",children:(0,t.jsx)(A.Title,{order:6,children:"Basic function setup"})}),(0,t.jsxs)(z.Group,{gap:"xs",align:"center",wrap:"wrap",children:[(0,t.jsx)(vg,{label:"Human Approval",tooltip:n?"Human review enabled - leaves changes uncommitted for manual review/testing (disables automation)":"Enable human review - will disable all automation options",checked:n,disabled:!V,onChange:h.setRequireHumanApproval}),(0,t.jsx)(vg,{label:"AI Review",tooltip:m?"AI code review enabled - performs extra code review and fixes":"Enable AI code review for additional quality checks",checked:m,disabled:!V,onChange:h.setAiCodeReview}),(0,t.jsx)(vg,{label:"Auto Quality Checks",tooltip:i?"Auto quality checks enabled - runs tests, linting, type checking, and builds automatically":"Enable automatic quality checks (tests, linting, type checking, builds)",checked:i,disabled:!V,onChange:h.setAutoQualityChecks}),(0,t.jsx)(vg,{label:"Auto Commit",tooltip:j?"Auto commit enabled - automatically commits changes after implementation":n?"Disabled: Human review mode keeps changes uncommitted":b?.autoCommit?"Temporarily disabled: Auto Commit functions not implemented yet":"Enable automatic commit of changes after implementation",checked:j,disabled:!V||n||!!b?.autoCommit,onChange:h.setAutoCommit}),(0,t.jsx)(vg,{label:"Create PR",tooltip:k?"Create PR enabled - will push branch and create PR (auto-enables Auto Commit)":n?"Disabled: Human review mode disables automation":l?"Disabled: Auto Merge conflicts with Create PR":b?.createPR?"Temporarily disabled: Create PR functions not implemented yet":"Enable to push branch and create PR (enables Auto Commit)",checked:k,disabled:!V||n||l||!!b?.createPR,onChange:h.setCreatePR}),(0,t.jsx)(vg,{label:"Auto Merge",tooltip:l?"Auto merge enabled - AI will auto-merge to main/dev (use with caution)":n?"Disabled: Human review mode disables automation":k?"Disabled: Create PR conflicts with Auto Merge":b?.autoMerge?"Temporarily disabled: Auto Merge functions not implemented yet":"Enable AI auto-merge to main/dev (disables Create PR) - use with caution",checked:l,disabled:!V||n||k||!!b?.autoMerge,onChange:h.setAutoMerge}),(0,t.jsx)(vg,{label:"Step-by-step",tooltip:o?"Step-by-step mode enabled – workflow waits for Continue between phases":"Enable to pause automatically between phases for testing/debugging",checked:o,disabled:!V,onChange:h.setStepByStepMode})]}),(0,t.jsx)(b0.Divider,{my:8}),(0,t.jsxs)(z.Group,{justify:"space-between",mb:"xs",children:[(0,t.jsx)(A.Title,{order:6,children:"AI & Models for each step"}),(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Defaults from .vibeman/ai-routing.json. You can override per workflow.",V?"":" (Locked while starting or running)"]})]}),(0,t.jsx)(z.Group,{gap:"xs",children:["execute_task","ai_codereview","ai_merge"].map(a=>{let b=C[a]||{},c=x.data?.operations?.[a]?.provider||x.data?.defaultProvider,d=x.data?.operations?.[a]?.model||"";return(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(bZ.Badge,{variant:"light",color:"gray",w:140,children:a}),(0,t.jsxs)(cJ.Menu,{withinPortal:!0,position:"bottom-start",shadow:"md",children:[(0,t.jsx)(cJ.Menu.Target,{children:(0,t.jsxs)(H.Button,{size:"xs",variant:"outline",disabled:!V,children:[b.provider||c||"Select provider",b.model?`:${b.model}`:d?`:${d}`:""]})}),(0,t.jsxs)(cJ.Menu.Dropdown,{children:[w.isLoading&&(0,t.jsx)(cJ.Menu.Label,{children:"Loading providers…"}),!w.isLoading&&(!w.data||0===w.data.length)&&(0,t.jsx)(cJ.Menu.Label,{children:"No providers found"}),w.data?.filter(a=>a.available).map((b,c)=>(0,t.jsxs)("div",{children:[(0,t.jsx)(cJ.Menu.Label,{children:b.displayName||b.name}),(b.models&&b.models.length>0?b.models:["default"]).map(c=>{let d="string"==typeof c?c:c.id||String(c),e="string"==typeof c?c:c.name||c.id||String(c);return(0,t.jsxs)(cJ.Menu.Item,{disabled:!V,onClick:()=>D(c=>({...c,[a]:{provider:b.name,model:d}})),children:[b.name,":",e]},`ovr-${a}-${b.name}:${d}`)}),c<(w.data?.length||1)-1&&(0,t.jsx)(b0.Divider,{my:4})]},`ovr-${a}-${b.name}-${c}`))]})]}),b.provider&&(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",color:"red",disabled:!V,onClick:()=>D(b=>{let c={...b};return delete c[a],c}),children:"Clear override"})]},a)})}),(0,t.jsx)(b0.Divider,{my:8}),(0,t.jsxs)(z.Group,{gap:"xs",align:"center",wrap:"wrap",children:[(0,t.jsx)(A.Title,{order:6,children:"Actions"}),(0,t.jsx)(H.Button,{size:"xs",leftSection:(0,t.jsx)(b7,{size:14}),onClick:P,loading:N.isPending||M.isPending,disabled:Y,variant:"gradient",gradient:{from:"blue",to:"cyan"},children:"Start Vibing"}),(0,t.jsx)(H.Button,{size:"xs",variant:"outline",color:"yellow",leftSection:(0,t.jsx)(vo,{size:14}),onClick:()=>g&&L.mutate({workflowId:g}),loading:L.isPending,disabled:!0,children:"Pause"}),U&&(0,t.jsx)(H.Button,{size:"xs",variant:"outline",color:"green",disabled:!0,leftSection:(0,t.jsx)(b7,{size:14}),onClick:()=>{if(!g)return;let a=q?.phaseHistory?.[q?.phaseHistory.length-1]?.to||q?.lastPhase||"implementing";c.e(838).then(c.bind(c,83838)).then(({modals:b})=>b.openConfirmModal({title:"Rerun current phase",centered:!0,labels:{confirm:"Rerun",cancel:"Cancel"},children:(0,t.jsx)("span",{children:"This will reset later steps and logs. Continue?"}),onConfirm:()=>X.mutate({workflowId:g,phase:a})}))},loading:X.isPending,children:"Rerun Current Phase"}),(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",color:"red",leftSection:(0,t.jsx)(b3,{size:14}),onClick:async()=>{if(g&&window.confirm("Reset this workflow? Worktree will be kept."))try{await J.mutateAsync({workflowId:g,deleteWorktree:!1,force:!0})}catch(a){u9.Rm.error("Failed to reset workflow:",a,"workflow-review")}},loading:J.isPending,disabled:!g,children:"Reset Workflow"}),(0,t.jsx)(H.Button,{size:"xs",variant:"outline",color:"red",leftSection:(0,t.jsx)(cL,{size:14}),onClick:async()=>{if(g&&window.confirm("Reset and destroy? This will delete the worktree and its branch. This cannot be undone."))try{await J.mutateAsync({workflowId:g,deleteWorktree:!0,force:!0})}catch(a){u9.Rm.error("Failed to reset & destroy workflow:",a,"workflow-review")}},loading:J.isPending,disabled:!g||!I?.path,children:"Reset & Destroy"})]}),l&&!n&&(0,t.jsx)(ve.Alert,{color:"orange",mt:"xs",children:(0,t.jsxs)(B.Text,{size:"xs",children:[(0,t.jsx)("strong",{children:"Warning:"})," Auto Merge will merge to the main/dev branch automatically without human approval."]})})]}),(0,t.jsx)(t.Fragment,{children:(0,t.jsxs)(bY.Paper,{children:[(0,t.jsx)(z.Group,{justify:"space-between",mb:"sm",children:(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(A.Title,{order:4,children:"Vibing Progress"}),(0,t.jsx)(bZ.Badge,{color:vm[Q],variant:"light",children:String(Q).toUpperCase()})]})}),(0,t.jsx)(vH,{workflow:q})]})})]})}var vJ=E("outline","git-pull-request","IconGitPullRequest",[["path",{d:"M6 18m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-0"}],["path",{d:"M6 6m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M18 18m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-2"}],["path",{d:"M6 8l0 8",key:"svg-3"}],["path",{d:"M11 6h5a2 2 0 0 1 2 2v8",key:"svg-4"}],["path",{d:"M14 9l-3 -3l3 -3",key:"svg-5"}]]);function vK({worktree:a,size:b="xs",showActions:c=!1}){let d=function(){let a=(0,cb.jE)();return bX.i.createWorktreePR.useMutation({onSuccess:()=>{a.invalidateQueries({queryKey:["worktrees"]})}})}(),e=async()=>{try{let b=await d.mutateAsync({taskId:a.taskId});b.success&&b.pullRequest?I.notifications.show({title:"PR Created",message:`Pull request created successfully: ${b.pullRequest.url}`,color:"green"}):I.notifications.show({title:"PR Creation Failed",message:b.error||"Unknown error occurred",color:"red"})}catch(a){I.notifications.show({title:"PR Creation Failed",message:a instanceof Error?a.message:"Unknown error occurred",color:"red"})}};return(0,t.jsxs)(z.Group,{gap:4,align:"center",children:[(0,t.jsx)(b_.Tooltip,{label:`Worktree: ${a.path}`,children:(0,t.jsx)(bZ.Badge,{color:"green",variant:"light",size:b,leftSection:(0,t.jsx)(ca,{size:10}),children:"active"})}),c&&(0,t.jsx)(b_.Tooltip,{label:"Create Pull Request",children:(0,t.jsx)(C.ActionIcon,{size:"sm",variant:"light",color:"blue",onClick:a=>{a.stopPropagation(),e()},loading:d.isPending,children:(0,t.jsx)(vJ,{size:12})})}),c&&(0,t.jsx)(b_.Tooltip,{label:`Branch: ${a.branchName}`,children:(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",style:{fontFamily:"monospace"},children:a.branchName})})]})}var vL=c(41547),vM=c(99019),vN=c(18861),vO=E("outline","alert-circle","IconAlertCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 8v4",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]]),vP=E("outline","info-circle","IconInfoCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 9h.01",key:"svg-1"}],["path",{d:"M11 12h1v4h1",key:"svg-2"}]]),vQ=E("outline","code-dots","IconCodeDots",[["path",{d:"M15 12h.01",key:"svg-0"}],["path",{d:"M12 12h.01",key:"svg-1"}],["path",{d:"M9 12h.01",key:"svg-2"}],["path",{d:"M6 19a2 2 0 0 1 -2 -2v-4l-1 -1l1 -1v-4a2 2 0 0 1 2 -2",key:"svg-3"}],["path",{d:"M18 19a2 2 0 0 0 2 -2v-4l1 -1l-1 -1v-4a2 2 0 0 0 -2 -2",key:"svg-4"}]]);function vR(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function vS(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?vR(Object(c),!0).forEach(function(b){vT(a,b,c[b])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):vR(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}function vT(a,b,c){var d;return(b="symbol"==typeof(d=function(a,b){if("object"!=typeof a||null===a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}(b,"string"))?d:String(d))in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function vU(a,b){if(null==a)return{};var c,d,e=function(a,b){if(null==a)return{};var c,d,e={},f=Object.keys(a);for(d=0;d<f.length;d++)c=f[d],b.indexOf(c)>=0||(e[c]=a[c]);return e}(a,b);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(a);for(d=0;d<f.length;d++)c=f[d],b.indexOf(c)>=0||Object.prototype.propertyIsEnumerable.call(a,c)&&(e[c]=a[c])}return e}function vV(a,b){return function(a){if(Array.isArray(a))return a}(a)||function(a,b){var c=null==a?null:"undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(null!=c){var d,e,f,g,h=[],i=!0,j=!1;try{if(f=(c=c.call(a)).next,0===b){if(Object(c)!==c)return;i=!1}else for(;!(i=(d=f.call(c)).done)&&(h.push(d.value),h.length!==b);i=!0);}catch(a){j=!0,e=a}finally{try{if(!i&&null!=c.return&&(g=c.return(),Object(g)!==g))return}finally{if(j)throw e}}return h}}(a,b)||vW(a,b)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function vW(a,b){if(a){if("string"==typeof a)return vX(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?vX(a,b):void 0}}function vX(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}var vY="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function vZ(a,b){return a(b={exports:{}},b.exports),b.exports}var v$=vZ(function(a){var b={}.hasOwnProperty;function c(){for(var a=[],d=0;d<arguments.length;d++){var e=arguments[d];if(e){var f=typeof e;if("string"===f||"number"===f)a.push(e);else if(Array.isArray(e)){if(e.length){var g=c.apply(null,e);g&&a.push(g)}}else if("object"===f){if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]")){a.push(e.toString());continue}for(var h in e)b.call(e,h)&&e[h]&&a.push(h)}}}return a.join(" ")}a.exports?(c.default=c,a.exports=c):window.classNames=c}),v_={hunkClassName:"",lineClassName:"",gutterClassName:"",codeClassName:"",monotonous:!1,gutterType:"default",viewType:"split",widgets:{},hideGutter:!1,selectedChanges:[],generateAnchorID:function(){},generateLineClassName:function(){},renderGutter:function(a){var b=a.renderDefault;return(0,a.wrapInAnchor)(b())},codeEvents:{},gutterEvents:{}},v0=(0,u.createContext)(v_),v1=v0.Provider,v2=vZ(function(a,b){a.exports={parse:function(a){for(var b,c,d,e,f,g=[],h=2,i=a.split("\n"),j=i.length,k=0;k<j;){var l=i[k];if(0===l.indexOf("diff --git")){b={hunks:[],oldEndingNewLine:!0,newEndingNewLine:!0,oldPath:(f=function(a){var b,c=a.slice(11),d=null,e=null;switch(c.indexOf('"')){case -1:d=(b=c.split(" "))[0].slice(2),e=b[1].slice(2);break;case 0:var f=c.indexOf('"',2);d=c.slice(3,f);var g=c.indexOf('"',f+1);e=g<0?c.slice(f+4):c.slice(g+3,-1);break;default:d=(b=c.split(" "))[0].slice(2),e=b[1].slice(3,-1)}return{oldPath:d,newPath:e}}(l)).oldPath,newPath:f.newPath},g.push(b);var m,n=null;f:for(;m=i[++k];){var o=m.indexOf(" "),p=o>-1?m.slice(0,o):p;switch(p){case"diff":k--;break f;case"deleted":case"new":var q=m.slice(o+1);0===q.indexOf("file mode")&&(b["new"===p?"newMode":"oldMode"]=q.slice(10));break;case"similarity":b.similarity=parseInt(m.split(" ")[2],10);break;case"index":var r=m.slice(o+1).split(" "),s=r[0].split("..");b.oldRevision=s[0],b.newRevision=s[1],r[1]&&(b.oldMode=b.newMode=r[1]);break;case"copy":case"rename":var t=m.slice(o+1);0===t.indexOf("from")?b.oldPath=t.slice(5):b.newPath=t.slice(3),n=p;break;case"---":var u=m.slice(o+1),v=i[++k].slice(4);"/dev/null"===u?(v=v.slice(2),n="add"):"/dev/null"===v?(u=u.slice(2),n="delete"):(n="modify",u=u.slice(2),v=v.slice(2)),u&&(b.oldPath=u),v&&(b.newPath=v),h=5;break f}}b.type=n||"modify"}else if(0===l.indexOf("Binary"))b.isBinary=!0,b.type=l.indexOf("/dev/null and")>=0?"add":l.indexOf("and /dev/null")>=0?"delete":"modify",h=2,b=null;else if(5===h)if(0===l.indexOf("@@")){var w=/^@@\s+-([0-9]+)(,([0-9]+))?\s+\+([0-9]+)(,([0-9]+))?/.exec(l);c={content:l,oldStart:w[1]-0,newStart:w[4]-0,oldLines:w[3]-0||1,newLines:w[6]-0||1,changes:[]},b.hunks.push(c),d=c.oldStart,e=c.newStart}else{var x=l.slice(0,1),y={content:l.slice(1)};switch(x){case"+":y.type="insert",y.isInsert=!0,y.lineNumber=e,e++;break;case"-":y.type="delete",y.isDelete=!0,y.lineNumber=d,d++;break;case" ":y.type="normal",y.isNormal=!0,y.oldLineNumber=d,y.newLineNumber=e,d++,e++;break;case"\\":var z=c.changes[c.changes.length-1];z.isDelete||(b.newEndingNewLine=!1),z.isInsert||(b.oldEndingNewLine=!1)}y.type&&c.changes.push(y)}k++}return g}}});function v3(a){return"insert"===a.type}function v4(a){return"delete"===a.type}function v5(a){return"normal"===a.type}function v6(a){return["".concat(a,"Start"),"".concat(a,"Lines")]}function v7(a){return"old"===a?function(a){return v3(a)?-1:v5(a)?a.oldLineNumber:a.lineNumber}:function(a){return v4(a)?-1:v5(a)?a.newLineNumber:a.lineNumber}}function v8(a,b){return function(c,d){var e=c[a],f=e+c[b];return d>=e&&d<f}}function v9(a,b){return function(c,d,e){var f=c[a]+c[b],g=d[a];return e>=f&&e<g}}function wa(a){var b,c,d=v7(a),e=(c=v8((b=vV(v6(a),2))[0],b[1]),function(a,b){return a.find(function(a){return c(a,b)})});return function(a,b){var c=e(a,b);if(c)return c.changes.find(function(a){return d(a)===b})}}function wb(a){var b="old"===a?"new":"old",c=vV(v6(a),2),d=c[0],e=c[1],f=vV(v6(b),2),g=f[0],h=f[1],i=v7(a),j=v7(b),k=v8(d,e),l=v9(d,e);return function(a,b){var c=a[0];if(b<c[d]){var f=c[d]-b;return c[g]-f}var m=a[a.length-1];if(m[d]+m[e]<=b){var n=b-m[d]-m[e];return m[g]+m[h]+n}for(var o=0;o<a.length;o++){var p=a[o],q=a[o+1];if(k(p,b)){var r=p.changes.findIndex(function(a){return i(a)===b}),s=p.changes[r];if(v5(s))return j(s);var t=v4(s)?r+1:r-1,u=p.changes[t];if(!u)return -1;var v=v3(s)?"delete":"insert";return u.type===v?j(u):-1}if(l(p,q,b)){var w=b-p[d]-p[e];return p[g]+p[h]+w}}throw Error("Unexpected line position ".concat(b))}}var wc=function(a,b){return a===b||a!=a&&b!=b},wd=function(a,b){for(var c=a.length;c--;)if(wc(a[c][0],b))return c;return -1},we=Array.prototype.splice;function wf(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}wf.prototype.clear=function(){this.__data__=[],this.size=0},wf.prototype.delete=function(a){var b=this.__data__,c=wd(b,a);return!(c<0)&&(c==b.length-1?b.pop():we.call(b,c,1),--this.size,!0)},wf.prototype.get=function(a){var b=this.__data__,c=wd(b,a);return c<0?void 0:b[c][1]},wf.prototype.has=function(a){return wd(this.__data__,a)>-1},wf.prototype.set=function(a,b){var c=this.__data__,d=wd(c,a);return d<0?(++this.size,c.push([a,b])):c[d][1]=b,this};var wg="object"==typeof vY&&vY&&vY.Object===Object&&vY,wh="object"==typeof self&&self&&self.Object===Object&&self,wi=wg||wh||Function("return this")(),wj=wi.Symbol,wk=Object.prototype,wl=wk.hasOwnProperty,wm=wk.toString,wn=wj?wj.toStringTag:void 0,wo=function(a){var b=wl.call(a,wn),c=a[wn];try{a[wn]=void 0;var d=!0}catch(a){}var e=wm.call(a);return d&&(b?a[wn]=c:delete a[wn]),e},wp=Object.prototype.toString,wq=wj?wj.toStringTag:void 0,wr=function(a){return null==a?void 0===a?"[object Undefined]":"[object Null]":wq&&wq in Object(a)?wo(a):wp.call(a)},ws=function(a){var b=typeof a;return null!=a&&("object"==b||"function"==b)},wt=function(a){if(!ws(a))return!1;var b=wr(a);return"[object Function]"==b||"[object GeneratorFunction]"==b||"[object AsyncFunction]"==b||"[object Proxy]"==b},wu=wi["__core-js_shared__"],wv=function(){var a=/[^.]+$/.exec(wu&&wu.keys&&wu.keys.IE_PROTO||"");return a?"Symbol(src)_1."+a:""}(),ww=Function.prototype.toString,wx=function(a){if(null!=a){try{return ww.call(a)}catch(a){}try{return a+""}catch(a){}}return""},wy=/^\[object .+?Constructor\]$/,wz=Object.prototype,wA=Function.prototype.toString,wB=wz.hasOwnProperty,wC=RegExp("^"+wA.call(wB).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),wD=function(a){return!(!ws(a)||wv&&wv in a)&&(wt(a)?wC:wy).test(wx(a))},wE=function(a,b){var c=null==a?void 0:a[b];return wD(c)?c:void 0},wF=wE(wi,"Map"),wG=wE(Object,"create"),wH=Object.prototype.hasOwnProperty,wI=Object.prototype.hasOwnProperty;function wJ(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}wJ.prototype.clear=function(){this.__data__=wG?wG(null):{},this.size=0},wJ.prototype.delete=function(a){var b=this.has(a)&&delete this.__data__[a];return this.size-=!!b,b},wJ.prototype.get=function(a){var b=this.__data__;if(wG){var c=b[a];return"__lodash_hash_undefined__"===c?void 0:c}return wH.call(b,a)?b[a]:void 0},wJ.prototype.has=function(a){var b=this.__data__;return wG?void 0!==b[a]:wI.call(b,a)},wJ.prototype.set=function(a,b){var c=this.__data__;return this.size+=+!this.has(a),c[a]=wG&&void 0===b?"__lodash_hash_undefined__":b,this};var wK=function(a){var b=typeof a;return"string"==b||"number"==b||"symbol"==b||"boolean"==b?"__proto__"!==a:null===a},wL=function(a,b){var c=a.__data__;return wK(b)?c["string"==typeof b?"string":"hash"]:c.map};function wM(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}function wN(a){var b=this.__data__=new wf(a);this.size=b.size}function wO(a){var b=-1,c=null==a?0:a.length;for(this.__data__=new wM;++b<c;)this.add(a[b])}wM.prototype.clear=function(){this.size=0,this.__data__={hash:new wJ,map:new(wF||wf),string:new wJ}},wM.prototype.delete=function(a){var b=wL(this,a).delete(a);return this.size-=!!b,b},wM.prototype.get=function(a){return wL(this,a).get(a)},wM.prototype.has=function(a){return wL(this,a).has(a)},wM.prototype.set=function(a,b){var c=wL(this,a),d=c.size;return c.set(a,b),this.size+=+(c.size!=d),this},wN.prototype.clear=function(){this.__data__=new wf,this.size=0},wN.prototype.delete=function(a){var b=this.__data__,c=b.delete(a);return this.size=b.size,c},wN.prototype.get=function(a){return this.__data__.get(a)},wN.prototype.has=function(a){return this.__data__.has(a)},wN.prototype.set=function(a,b){var c=this.__data__;if(c instanceof wf){var d=c.__data__;if(!wF||d.length<199)return d.push([a,b]),this.size=++c.size,this;c=this.__data__=new wM(d)}return c.set(a,b),this.size=c.size,this},wO.prototype.add=wO.prototype.push=function(a){return this.__data__.set(a,"__lodash_hash_undefined__"),this},wO.prototype.has=function(a){return this.__data__.has(a)};var wP=function(a,b){for(var c=-1,d=null==a?0:a.length;++c<d;)if(b(a[c],c,a))return!0;return!1},wQ=function(a,b,c,d,e,f){var g=1&c,h=a.length,i=b.length;if(h!=i&&!(g&&i>h))return!1;var j=f.get(a),k=f.get(b);if(j&&k)return j==b&&k==a;var l=-1,m=!0,n=2&c?new wO:void 0;for(f.set(a,b),f.set(b,a);++l<h;){var o=a[l],p=b[l];if(d)var q=g?d(p,o,l,b,a,f):d(o,p,l,a,b,f);if(void 0!==q){if(q)continue;m=!1;break}if(n){if(!wP(b,function(a,b){if(!n.has(b)&&(o===a||e(o,a,c,d,f)))return n.push(b)})){m=!1;break}}else if(o!==p&&!e(o,p,c,d,f)){m=!1;break}}return f.delete(a),f.delete(b),m},wR=wi.Uint8Array,wS=function(a){var b=-1,c=Array(a.size);return a.forEach(function(a,d){c[++b]=[d,a]}),c},wT=function(a){var b=-1,c=Array(a.size);return a.forEach(function(a){c[++b]=a}),c},wU=wj?wj.prototype:void 0,wV=wU?wU.valueOf:void 0,wW=function(a,b,c,d,e,f,g){switch(c){case"[object DataView]":if(a.byteLength!=b.byteLength||a.byteOffset!=b.byteOffset)break;a=a.buffer,b=b.buffer;case"[object ArrayBuffer]":return!(a.byteLength!=b.byteLength||!f(new wR(a),new wR(b)));case"[object Boolean]":case"[object Date]":case"[object Number]":return wc(+a,+b);case"[object Error]":return a.name==b.name&&a.message==b.message;case"[object RegExp]":case"[object String]":return a==b+"";case"[object Map]":var h=wS;case"[object Set]":var i=1&d;if(h||(h=wT),a.size!=b.size&&!i)break;var j=g.get(a);if(j)return j==b;d|=2,g.set(a,b);var k=wQ(h(a),h(b),d,e,f,g);return g.delete(a),k;case"[object Symbol]":if(wV)return wV.call(a)==wV.call(b)}return!1},wX=function(a,b){for(var c=-1,d=b.length,e=a.length;++c<d;)a[e+c]=b[c];return a},wY=Array.isArray,wZ=function(a,b,c){var d=b(a);return wY(a)?d:wX(d,c(a))},w$=function(a,b){for(var c=-1,d=null==a?0:a.length,e=0,f=[];++c<d;){var g=a[c];b(g,c,a)&&(f[e++]=g)}return f},w_=Object.prototype.propertyIsEnumerable,w0=Object.getOwnPropertySymbols,w1=w0?function(a){return null==a?[]:w$(w0(a=Object(a)),function(b){return w_.call(a,b)})}:function(){return[]},w2=function(a,b){for(var c=-1,d=Array(a);++c<a;)d[c]=b(c);return d},w3=function(a){return null!=a&&"object"==typeof a},w4=function(a){return w3(a)&&"[object Arguments]"==wr(a)},w5=Object.prototype,w6=w5.hasOwnProperty,w7=w5.propertyIsEnumerable,w8=w4(function(){return arguments}())?w4:function(a){return w3(a)&&w6.call(a,"callee")&&!w7.call(a,"callee")},w9=function(){return!1},xa=vZ(function(a,b){var c=b&&!b.nodeType&&b,d=c&&a&&!a.nodeType&&a,e=d&&d.exports===c?wi.Buffer:void 0;a.exports=(e?e.isBuffer:void 0)||w9}),xb=/^(?:0|[1-9]\d*)$/,xc=function(a,b){var c=typeof a;return!!(b=null==b?0x1fffffffffffff:b)&&("number"==c||"symbol"!=c&&xb.test(a))&&a>-1&&a%1==0&&a<b},xd=function(a){return"number"==typeof a&&a>-1&&a%1==0&&a<=0x1fffffffffffff},xe={};xe["[object Float32Array]"]=xe["[object Float64Array]"]=xe["[object Int8Array]"]=xe["[object Int16Array]"]=xe["[object Int32Array]"]=xe["[object Uint8Array]"]=xe["[object Uint8ClampedArray]"]=xe["[object Uint16Array]"]=xe["[object Uint32Array]"]=!0,xe["[object Arguments]"]=xe["[object Array]"]=xe["[object ArrayBuffer]"]=xe["[object Boolean]"]=xe["[object DataView]"]=xe["[object Date]"]=xe["[object Error]"]=xe["[object Function]"]=xe["[object Map]"]=xe["[object Number]"]=xe["[object Object]"]=xe["[object RegExp]"]=xe["[object Set]"]=xe["[object String]"]=xe["[object WeakMap]"]=!1;var xf=vZ(function(a,b){var c=b&&!b.nodeType&&b,d=c&&a&&!a.nodeType&&a,e=d&&d.exports===c&&wg.process;a.exports=function(){try{return d&&d.require&&d.require("util").types||e&&e.binding&&e.binding("util")}catch(a){}}()}),xg=xf&&xf.isTypedArray,xh=xg?function(a){return xg(a)}:function(a){return w3(a)&&xd(a.length)&&!!xe[wr(a)]},xi=Object.prototype.hasOwnProperty,xj=function(a,b){var c=wY(a),d=!c&&w8(a),e=!c&&!d&&xa(a),f=!c&&!d&&!e&&xh(a),g=c||d||e||f,h=g?w2(a.length,String):[],i=h.length;for(var j in a)!b&&!xi.call(a,j)||g&&("length"==j||e&&("offset"==j||"parent"==j)||f&&("buffer"==j||"byteLength"==j||"byteOffset"==j)||xc(j,i))||h.push(j);return h},xk=Object.prototype,xl=function(a){var b=a&&a.constructor;return a===("function"==typeof b&&b.prototype||xk)},xm=(f=Object.keys,g=Object,function(a){return f(g(a))}),xn=Object.prototype.hasOwnProperty,xo=function(a){if(!xl(a))return xm(a);var b=[];for(var c in Object(a))xn.call(a,c)&&"constructor"!=c&&b.push(c);return b},xp=function(a){return null!=a&&xd(a.length)&&!wt(a)},xq=function(a){return xp(a)?xj(a):xo(a)},xr=function(a){return wZ(a,xq,w1)},xs=Object.prototype.hasOwnProperty,xt=function(a,b,c,d,e,f){var g=1&c,h=xr(a),i=h.length;if(i!=xr(b).length&&!g)return!1;for(var j=i;j--;){var k=h[j];if(!(g?k in b:xs.call(b,k)))return!1}var l=f.get(a),m=f.get(b);if(l&&m)return l==b&&m==a;var n=!0;f.set(a,b),f.set(b,a);for(var o=g;++j<i;){var p=a[k=h[j]],q=b[k];if(d)var r=g?d(q,p,k,b,a,f):d(p,q,k,a,b,f);if(!(void 0===r?p===q||e(p,q,c,d,f):r)){n=!1;break}o||(o="constructor"==k)}if(n&&!o){var s=a.constructor,t=b.constructor;s==t||!("constructor"in a)||!("constructor"in b)||"function"==typeof s&&s instanceof s&&"function"==typeof t&&t instanceof t||(n=!1)}return f.delete(a),f.delete(b),n},xu=wE(wi,"DataView"),xv=wE(wi,"Promise"),xw=wE(wi,"Set"),xx=wE(wi,"WeakMap"),xy=wx(xu),xz=wx(wF),xA=wx(xv),xB=wx(xw),xC=wx(xx),xD=wr;(xu&&"[object DataView]"!=xD(new xu(new ArrayBuffer(1)))||wF&&"[object Map]"!=xD(new wF)||xv&&"[object Promise]"!=xD(xv.resolve())||xw&&"[object Set]"!=xD(new xw)||xx&&"[object WeakMap]"!=xD(new xx))&&(xD=function(a){var b=wr(a),c="[object Object]"==b?a.constructor:void 0,d=c?wx(c):"";if(d)switch(d){case xy:return"[object DataView]";case xz:return"[object Map]";case xA:return"[object Promise]";case xB:return"[object Set]";case xC:return"[object WeakMap]"}return b});var xE=xD,xF="[object Object]",xG=Object.prototype.hasOwnProperty,xH=function(a,b,c,d,e,f){var g=wY(a),h=wY(b),i=g?"[object Array]":xE(a),j=h?"[object Array]":xE(b),k=(i="[object Arguments]"==i?xF:i)==xF,l=(j="[object Arguments]"==j?xF:j)==xF,m=i==j;if(m&&xa(a)){if(!xa(b))return!1;g=!0,k=!1}if(m&&!k)return f||(f=new wN),g||xh(a)?wQ(a,b,c,d,e,f):wW(a,b,i,c,d,e,f);if(!(1&c)){var n=k&&xG.call(a,"__wrapped__"),o=l&&xG.call(b,"__wrapped__");if(n||o){var p=n?a.value():a,q=o?b.value():b;return f||(f=new wN),e(p,q,c,d,f)}}return!!m&&(f||(f=new wN),xt(a,b,c,d,e,f))},xI=function a(b,c,d,e,f){return b===c||(null!=b&&null!=c&&(w3(b)||w3(c))?xH(b,c,d,e,a,f):b!=b&&c!=c)},xJ=function(a,b,c,d){var e=c.length,f=e,g=!d;if(null==a)return!f;for(a=Object(a);e--;){var h=c[e];if(g&&h[2]?h[1]!==a[h[0]]:!(h[0]in a))return!1}for(;++e<f;){var i=(h=c[e])[0],j=a[i],k=h[1];if(g&&h[2]){if(void 0===j&&!(i in a))return!1}else{var l=new wN;if(d)var m=d(j,k,i,a,b,l);if(!(void 0===m?xI(k,j,3,d,l):m))return!1}}return!0},xK=function(a){return a==a&&!ws(a)},xL=function(a){for(var b=xq(a),c=b.length;c--;){var d=b[c],e=a[d];b[c]=[d,e,xK(e)]}return b},xM=function(a,b){return function(c){return null!=c&&c[a]===b&&(void 0!==b||a in Object(c))}},xN=function(a){var b=xL(a);return 1==b.length&&b[0][2]?xM(b[0][0],b[0][1]):function(c){return c===a||xJ(c,a,b)}},xO=function(a){return"symbol"==typeof a||w3(a)&&"[object Symbol]"==wr(a)},xP=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xQ=/^\w*$/,xR=function(a,b){if(wY(a))return!1;var c=typeof a;return!("number"!=c&&"symbol"!=c&&"boolean"!=c&&null!=a&&!xO(a))||xQ.test(a)||!xP.test(a)||null!=b&&a in Object(b)};function xS(a,b){if("function"!=typeof a||null!=b&&"function"!=typeof b)throw TypeError("Expected a function");var c=function(){var d=arguments,e=b?b.apply(this,d):d[0],f=c.cache;if(f.has(e))return f.get(e);var g=a.apply(this,d);return c.cache=f.set(e,g)||f,g};return c.cache=new(xS.Cache||wM),c}xS.Cache=wM;var xT=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,xU=/\\(\\)?/g,xV=function(a){var b=xS(a,function(a){return 500===c.size&&c.clear(),a}),c=b.cache;return b}(function(a){var b=[];return 46===a.charCodeAt(0)&&b.push(""),a.replace(xT,function(a,c,d,e){b.push(d?e.replace(xU,"$1"):c||a)}),b}),xW=function(a,b){for(var c=-1,d=null==a?0:a.length,e=Array(d);++c<d;)e[c]=b(a[c],c,a);return e},xX=wj?wj.prototype:void 0,xY=xX?xX.toString:void 0,xZ=function a(b){if("string"==typeof b)return b;if(wY(b))return xW(b,a)+"";if(xO(b))return xY?xY.call(b):"";var c=b+"";return"0"==c&&1/b==-1/0?"-0":c},x$=function(a,b){return wY(a)?a:xR(a,b)?[a]:xV(null==a?"":xZ(a))},x_=function(a){if("string"==typeof a||xO(a))return a;var b=a+"";return"0"==b&&1/a==-1/0?"-0":b},x0=function(a,b){for(var c=0,d=(b=x$(b,a)).length;null!=a&&c<d;)a=a[x_(b[c++])];return c&&c==d?a:void 0},x1=function(a,b,c){var d=null==a?void 0:x0(a,b);return void 0===d?c:d},x2=function(a,b){return null!=a&&b in Object(a)},x3=function(a,b,c){for(var d=-1,e=(b=x$(b,a)).length,f=!1;++d<e;){var g=x_(b[d]);if(!(f=null!=a&&c(a,g)))break;a=a[g]}return f||++d!=e?f:!!(e=null==a?0:a.length)&&xd(e)&&xc(g,e)&&(wY(a)||w8(a))},x4=function(a){return a},x5=function(a){var b;return xR(a)?(b=x_(a),function(a){return null==a?void 0:a[b]}):function(b){return x0(b,a)}},x6=function(a){var b,c;return"function"==typeof a?a:null==a?x4:"object"==typeof a?wY(a)?(b=a[0],c=a[1],xR(b)&&xK(c)?xM(x_(b),c):function(a){var d=x1(a,b);return void 0===d&&d===c?null!=a&&x3(a,b,x2):xI(c,d,3)}):xN(a):x5(a)};function x7(a){if(!a)throw Error("change is not provided");if(v5(a))return"N".concat(a.oldLineNumber);var b=v3(a)?"I":"D";return"".concat(b).concat(a.lineNumber)}v7("old"),v7("new"),wb("old"),v7("old"),v8("oldStart","oldLines"),v9("oldStart","oldLines");var x8=v7("old"),x9=v7("new"),ya=(wa("old"),wa("new"),wb("new"),wb("old"),function(){try{var a=wE(Object,"defineProperty");return a({},"",{}),a}catch(a){}}()),yb=function(a,b,c){"__proto__"==b&&ya?ya(a,b,{configurable:!0,enumerable:!0,value:c,writable:!0}):a[b]=c},yc=function(a,b,c){for(var d=-1,e=Object(a),f=c(a),g=f.length;g--;){var h=f[++d];if(!1===b(e[h],h,e))break}return a},yd=function(a,b){return a&&yc(a,b,xq)},ye=function(a,b){var c={};return b=x6(b),yd(a,function(a,d,e){yb(c,d,b(a,d,e))}),c},yf=["changeKey","text","tokens","renderToken"],yg=function a(b,c){var d=b.type,e=b.value,f=b.markType,g=b.properties,h=b.className,i=b.children,j=function(b){return(0,t.jsx)("span",{className:b,children:e||i&&i.map(a)},c)};switch(d){case"text":return e;case"mark":return j("diff-code-mark diff-code-mark-".concat(f));case"edit":return j("diff-code-edit");default:var k=g&&g.className;return j(v$(h||k))}},yh=(0,u.memo)(function(a){var b=a.changeKey,c=a.text,d=a.tokens,e=a.renderToken,f=vU(a,yf),g=e?function(a,b){return e(a,yg,b)}:yg;return(0,t.jsx)("td",vS(vS({},f),{},{"data-change-key":b,children:d?!function(a){if(!Array.isArray(a))return!0;if(a.length>1)return!1;if(1===a.length){var b=vV(a,1)[0];return"text"===b.type&&!b.value}return!0}(d)?d.map(g):" ":c||" "}))});function yi(a,b){return function(){var c="old"===b?x8(a):x9(a);return -1===c?void 0:c}}function yj(a,b){return function(c){return a&&c?(0,t.jsx)("a",{href:b?"#"+b:void 0,children:c}):c}}function yk(a,b){return b?function(c){a(),b(c)}:a}function yl(a,b,c,d){return(0,u.useMemo)(function(){var e=ye(a,function(a){return function(c){return a&&a(b,c)}});return e.onMouseEnter=yk(c,e.onMouseEnter),e.onMouseLeave=yk(d,e.onMouseLeave),e},[a,c,d,b])}function ym(a,b,c,d,e,f,g,h,i){var j={change:b,side:d,inHoverState:h,renderDefault:yi(b,d),wrapInAnchor:yj(e,f)};return(0,t.jsx)("td",vS(vS({className:a},g),{},{"data-change-key":c,children:i(j)}))}var yn=(0,u.memo)(function(a){var b,c,d,e=a.change,f=a.selected,g=a.tokens,h=a.className,i=a.generateLineClassName,j=a.gutterClassName,k=a.codeClassName,l=a.gutterEvents,m=a.codeEvents,n=a.hideGutter,o=a.gutterAnchor,p=a.generateAnchorID,q=a.renderToken,r=a.renderGutter,s=e.type,v=e.content,w=x7(e),x=(c=(b=vV((0,u.useState)(!1),2))[0],d=b[1],[c,(0,u.useCallback)(function(){return d(!0)},[]),(0,u.useCallback)(function(){return d(!1)},[])]),y=vV(x,3),z=y[0],A=y[1],B=y[2],C=(0,u.useMemo)(function(){return{change:e}},[e]),D=yl(l,C,A,B),E=yl(m,C,A,B),F=p(e),G=i({changes:[e],defaultGenerate:function(){return h}}),H=v$("diff-gutter","diff-gutter-".concat(s),j,{"diff-gutter-selected":f}),I=v$("diff-code","diff-code-".concat(s),k,{"diff-code-selected":f});return(0,t.jsxs)("tr",{id:F,className:v$("diff-line",G),children:[!n&&ym(H,e,w,"old",o,F,D,z,r),!n&&ym(H,e,w,"new",o,F,D,z,r),(0,t.jsx)(yh,vS({className:I,changeKey:w,text:v,tokens:g,renderToken:q},E))]})});function yo(a){var b=a.hideGutter,c=a.element;return(0,t.jsx)("tr",{className:"diff-widget",children:(0,t.jsx)("td",{colSpan:b?1:3,className:"diff-widget-content",children:c})})}var yp=["hideGutter","selectedChanges","tokens","lineClassName"],yq=["hunk","widgets","className"];function yr(a){var b,c=a.hunk,d=a.widgets,e=a.className,f=vU(a,yq),g=(b=c.changes,b.reduce(function(a,b){var c=x7(b);a.push(["change",c,b]);var e=d[c];return e&&a.push(["widget",c,e]),a},[]));return(0,t.jsx)("tbody",{className:v$("diff-hunk",e),children:g.map(function(a){return function(a,b){var c=vV(a,3),d=c[0],e=c[1],f=c[2],g=b.hideGutter,h=b.selectedChanges,i=b.tokens,j=b.lineClassName,k=vU(b,yp);if("change"===d){var l=v4(f)?"old":"new",m=v4(f)?x8(f):x9(f),n=i?i[l][m-1]:null;return(0,t.jsx)(yn,vS({className:j,change:f,hideGutter:g,selected:h.includes(e),tokens:n},k),"change".concat(e))}return"widget"===d?(0,t.jsx)(yo,{hideGutter:g,element:f},"widget".concat(e)):null}(a,f)})})}function ys(a,b,c,d){var e=(0,u.useCallback)(function(){return b(a)},[a,b]),f=(0,u.useCallback)(function(){return b("")},[b]);return(0,u.useMemo)(function(){var b=ye(d,function(b){return function(d){return b&&b({side:a,change:c},d)}});return b.onMouseEnter=yk(e,b.onMouseEnter),b.onMouseLeave=yk(f,b.onMouseLeave),b},[c,d,e,a,f])}function yt(a){var b=a.change,c=a.side,d=a.selected,e=a.tokens,f=a.gutterClassName,g=a.codeClassName,h=a.gutterEvents,i=a.codeEvents,j=a.anchorID,k=a.gutterAnchor,l=a.gutterAnchorTarget,m=a.hideGutter,n=a.hover,o=a.renderToken,p=a.renderGutter;if(!b){var q=v$("diff-gutter","diff-gutter-omit",f),r=v$("diff-code","diff-code-omit",g);return[!m&&(0,t.jsx)("td",{className:q},"gutter"),(0,t.jsx)("td",{className:r},"code")]}var s=b.type,u=b.content,v=x7(b),w=0===c?"old":"new",x=vS({id:j||void 0,className:v$("diff-gutter","diff-gutter-".concat(s),vT({"diff-gutter-selected":d},"diff-line-hover-"+w,n),f),children:p({change:b,side:w,inHoverState:n,renderDefault:yi(b,w),wrapInAnchor:yj(k,l)})},h),y=v$("diff-code","diff-code-".concat(s),vT({"diff-code-selected":d},"diff-line-hover-"+w,n),g);return[!m&&(0,t.jsx)("td",vS(vS({},x),{},{"data-change-key":v}),"gutter"),(0,t.jsx)(yh,vS({className:y,changeKey:v,text:u,tokens:e,renderToken:o},i),"code")]}var yu=(0,u.memo)(function(a){var b=a.className,c=a.oldChange,d=a.newChange,e=a.oldSelected,f=a.newSelected,g=a.oldTokens,h=a.newTokens,i=a.monotonous,j=a.gutterClassName,k=a.codeClassName,l=a.gutterEvents,m=a.codeEvents,n=a.hideGutter,o=a.generateAnchorID,p=a.generateLineClassName,q=a.gutterAnchor,r=a.renderToken,s=a.renderGutter,v=vV((0,u.useState)(""),2),w=v[0],x=v[1],y=ys("old",x,c,l),z=ys("new",x,d,l),A=ys("old",x,c,m),B=ys("new",x,d,m),C=c&&o(c),D=d&&o(d),E=p({changes:[c,d],defaultGenerate:function(){return b}}),F={monotonous:i,hideGutter:n,gutterClassName:j,codeClassName:k,gutterEvents:l,codeEvents:m,renderToken:r,renderGutter:s},G=vS(vS({},F),{},{change:c,side:0,selected:e,tokens:g,gutterEvents:y,codeEvents:A,anchorID:C,gutterAnchor:q,gutterAnchorTarget:C,hover:"old"===w}),H=vS(vS({},F),{},{change:d,side:1,selected:f,tokens:h,gutterEvents:z,codeEvents:B,anchorID:c===d?null:D,gutterAnchor:q,gutterAnchorTarget:c===d?C:D,hover:"new"===w});if(i)return(0,t.jsx)("tr",{className:v$("diff-line",E),children:yt(c?G:H)});var I=c&&!d?"diff-line-old-only":!c&&d?"diff-line-new-only":c===d?"diff-line-normal":"diff-line-compare";return(0,t.jsxs)("tr",{className:v$("diff-line",I,E),children:[yt(G),yt(H)]})});function yv(a){var b=a.hideGutter,c=a.oldElement,d=a.newElement;return a.monotonous?(0,t.jsx)("tr",{className:"diff-widget",children:(0,t.jsx)("td",{colSpan:b?1:2,className:"diff-widget-content",children:c||d})}):c===d?(0,t.jsx)("tr",{className:"diff-widget",children:(0,t.jsx)("td",{colSpan:b?2:4,className:"diff-widget-content",children:c})}):(0,t.jsxs)("tr",{className:"diff-widget",children:[(0,t.jsx)("td",{colSpan:b?1:2,className:"diff-widget-content",children:c}),(0,t.jsx)("td",{colSpan:b?1:2,className:"diff-widget-content",children:d})]})}var yw=["selectedChanges","monotonous","hideGutter","tokens","lineClassName"],yx=["hunk","widgets","className"];function yy(a,b){return(a?x7(a):"00")+(b?x7(b):"00")}function yz(a){var b=a.hunk,c=a.widgets,d=a.className,e=vU(a,yx),f=function(a,b){for(var c=function(a){return a&&b[x7(a)]||null},d=[],e=0;e<a.length;e++){var f=a[e];if(v5(f))d.push(["change",yy(f,f),f,f]);else if(v4(f)){var g=a[e+1];g&&v3(g)?(e+=1,d.push(["change",yy(f,g),f,g])):d.push(["change",yy(f,null),f,null])}else d.push(["change",yy(null,f),null,f]);var h=d[d.length-1],i=c(h[2]),j=c(h[3]);if(i||j){var k=h[1];d.push(["widget",k,i,j])}}return d}(b.changes,c);return(0,t.jsx)("tbody",{className:v$("diff-hunk",d),children:f.map(function(a){return function(a,b){var c=vV(a,4),d=c[0],e=c[1],f=c[2],g=c[3],h=b.selectedChanges,i=b.monotonous,j=b.hideGutter,k=b.tokens,l=b.lineClassName,m=vU(b,yw);if("change"===d){var n=!!f&&h.includes(x7(f)),o=!!g&&h.includes(x7(g)),p=f&&k?k.old[x8(f)-1]:null,q=g&&k?k.new[x9(g)-1]:null;return(0,t.jsx)(yu,vS({className:l,oldChange:f,newChange:g,monotonous:i,hideGutter:j,oldSelected:n,newSelected:o,oldTokens:p,newTokens:q},m),"change".concat(e))}return"widget"===d?(0,t.jsx)(yv,{monotonous:i,hideGutter:j,oldElement:f,newElement:g},"widget".concat(e)):null}(a,e)})})}var yA=["gutterType","hunkClassName"];function yB(a){var b=a.hunk,c=(0,u.useContext)(v0),d=c.gutterType,e=c.hunkClassName,f=vU(c,yA),g="unified"===f.viewType?yr:yz;return(0,t.jsx)(g,vS(vS({},f),{},{hunk:b,hideGutter:"none"===d,gutterAnchor:"anchor"===d,className:e}))}function yC(){}function yD(a,b){var c=b?"auto":"none";a instanceof HTMLElement&&a.style.userSelect!==c&&(a.style.userSelect=c)}var yE=(0,u.memo)(function(a){var b=a.diffType,c=a.hunks,d=a.optimizeSelection,e=a.className,f=a.hunkClassName,g=void 0===f?v_.hunkClassName:f,h=a.lineClassName,i=void 0===h?v_.lineClassName:h,j=a.generateLineClassName,k=void 0===j?v_.generateLineClassName:j,l=a.gutterClassName,m=void 0===l?v_.gutterClassName:l,n=a.codeClassName,o=void 0===n?v_.codeClassName:n,p=a.gutterType,q=void 0===p?v_.gutterType:p,r=a.viewType,s=void 0===r?v_.viewType:r,v=a.gutterEvents,w=void 0===v?v_.gutterEvents:v,x=a.codeEvents,y=void 0===x?v_.codeEvents:x,z=a.generateAnchorID,A=void 0===z?v_.generateAnchorID:z,B=a.selectedChanges,C=void 0===B?v_.selectedChanges:B,D=a.widgets,E=void 0===D?v_.widgets:D,F=a.renderGutter,G=void 0===F?v_.renderGutter:F,H=a.tokens,I=a.renderToken,J=a.children,K=(0,u.useRef)(null),L=(0,u.useCallback)(function(a){var b=a.target;if(0===a.button){var c=function(a,b){for(var c=a;c&&c!==document.documentElement&&!c.classList.contains(b);)c=c.parentElement;return c===document.documentElement?null:c}(b,"diff-code");if(c&&c.parentElement){var d=window.getSelection();d&&d.removeAllRanges();var e=((function(a){if(Array.isArray(a))return vX(a)})(f=c.parentElement.children)||function(a){if("undefined"!=typeof Symbol&&null!=a[Symbol.iterator]||null!=a["@@iterator"])return Array.from(a)}(f)||vW(f)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).indexOf(c);if(1===e||3===e){var f,g,h=function(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=vW(a))){c&&(a=c);var d=0,e=function(){};return{s:e,n:function(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function(a){throw a},f:e}}throw TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function(){c=c.call(a)},n:function(){var a=c.next();return g=a.done,a},e:function(a){h=!0,f=a},f:function(){try{g||null==c.return||c.return()}finally{if(h)throw f}}}}(K.current?K.current.querySelectorAll(".diff-line"):[]);try{for(h.s();!(g=h.n()).done;){var i=g.value.children;yD(i[1],1===e),yD(i[3],3===e)}}catch(a){h.e(a)}finally{h.f()}}}}},[]),M="none"===q,N="add"===b||"delete"===b,O="split"===s&&!N&&d?L:yC,P=(0,u.useMemo)(function(){return(0,t.jsxs)("colgroup","unified"===s?{children:[!M&&(0,t.jsx)("col",{className:"diff-gutter-col"}),!M&&(0,t.jsx)("col",{className:"diff-gutter-col"}),(0,t.jsx)("col",{})]}:N?{children:[!M&&(0,t.jsx)("col",{className:"diff-gutter-col"}),(0,t.jsx)("col",{})]}:{children:[!M&&(0,t.jsx)("col",{className:"diff-gutter-col"}),(0,t.jsx)("col",{}),!M&&(0,t.jsx)("col",{className:"diff-gutter-col"}),(0,t.jsx)("col",{})]})},[s,N,M]),Q=(0,u.useMemo)(function(){return{hunkClassName:g,lineClassName:i,generateLineClassName:k,gutterClassName:m,codeClassName:o,monotonous:N,hideGutter:M,viewType:s,gutterType:q,codeEvents:y,gutterEvents:w,generateAnchorID:A,selectedChanges:C,widgets:E,renderGutter:G,tokens:H,renderToken:I}},[o,y,A,m,w,q,M,g,i,k,N,G,I,C,H,s,E]);return(0,t.jsx)(v1,{value:Q,children:(0,t.jsxs)("table",{ref:K,className:v$("diff","diff-".concat(s),e),onMouseDown:O,children:[P,(void 0===J?function(a){return a.map(function(a){return(0,t.jsx)(yB,{hunk:a},"-".concat(a.oldStart,",").concat(a.oldLines," +").concat(a.newStart,",").concat(a.newLines))})}:J)(c)]})})}),yF=function(a,b,c,d){for(var e=-1,f=null==a?0:a.length;++e<f;){var g=a[e];b(d,g,c(g),a)}return d},yG=(e=yd,function(a,b){if(null==a)return a;if(!xp(a))return e(a,b);for(var c=a.length,d=-1,f=Object(a);++d<c&&!1!==b(f[d],d,f););return a}),yH=function(a,b,c,d){return yG(a,function(a,e,f){b(d,a,c(a),f)}),d},yI=function(a,b){return function(c,d){var e=wY(c)?yF:yH,f=b?b():{};return e(c,a,x6(d),f)}};yI(function(a,b,c){yb(a,c,b)}),wj&&wj.isConcatSpreadable;var yJ=Object.prototype.hasOwnProperty;yI(function(a,b,c){yJ.call(a,c)?a[c].push(b):yb(a,c,[b])}),Object.prototype.hasOwnProperty;var yK=vZ(function(a){var b=function(){this.Diff_Timeout=1,this.Diff_EditCost=4,this.Match_Threshold=.5,this.Match_Distance=1e3,this.Patch_DeleteThreshold=.5,this.Patch_Margin=4,this.Match_MaxBits=32};b.Diff=function(a,b){return[a,b]},b.prototype.diff_main=function(a,c,d,e){void 0===e&&(e=this.Diff_Timeout<=0?Number.MAX_VALUE:(new Date).getTime()+1e3*this.Diff_Timeout);var f=e;if(null==a||null==c)throw Error("Null input. (diff_main)");if(a==c)return a?[new b.Diff(0,a)]:[];void 0===d&&(d=!0);var g=d,h=this.diff_commonPrefix(a,c),i=a.substring(0,h);a=a.substring(h),c=c.substring(h),h=this.diff_commonSuffix(a,c);var j=a.substring(a.length-h);a=a.substring(0,a.length-h),c=c.substring(0,c.length-h);var k=this.diff_compute_(a,c,g,f);return i&&k.unshift(new b.Diff(0,i)),j&&k.push(new b.Diff(0,j)),this.diff_cleanupMerge(k),k},b.prototype.diff_compute_=function(a,c,d,e){if(!a)return[new b.Diff(1,c)];if(!c)return[new b.Diff(-1,a)];var f,g=a.length>c.length?a:c,h=a.length>c.length?c:a,i=g.indexOf(h);if(-1!=i)return f=[new b.Diff(1,g.substring(0,i)),new b.Diff(0,h),new b.Diff(1,g.substring(i+h.length))],a.length>c.length&&(f[0][0]=f[2][0]=-1),f;if(1==h.length)return[new b.Diff(-1,a),new b.Diff(1,c)];var j=this.diff_halfMatch_(a,c);if(j){var k=j[0],l=j[1],m=j[2],n=j[3],o=j[4],p=this.diff_main(k,m,d,e),q=this.diff_main(l,n,d,e);return p.concat([new b.Diff(0,o)],q)}return d&&a.length>100&&c.length>100?this.diff_lineMode_(a,c,e):this.diff_bisect_(a,c,e)},b.prototype.diff_lineMode_=function(a,c,d){var e=this.diff_linesToChars_(a,c);a=e.chars1,c=e.chars2;var f=e.lineArray,g=this.diff_main(a,c,!1,d);this.diff_charsToLines_(g,f),this.diff_cleanupSemantic(g),g.push(new b.Diff(0,""));for(var h=0,i=0,j=0,k="",l="";h<g.length;){switch(g[h][0]){case 1:j++,l+=g[h][1];break;case -1:i++,k+=g[h][1];break;case 0:if(i>=1&&j>=1){g.splice(h-i-j,i+j),h=h-i-j;for(var m=this.diff_main(k,l,!1,d),n=m.length-1;n>=0;n--)g.splice(h,0,m[n]);h+=m.length}j=0,i=0,k="",l=""}h++}return g.pop(),g},b.prototype.diff_bisect_=function(a,c,d){for(var e=a.length,f=c.length,g=Math.ceil((e+f)/2),h=2*g,i=Array(h),j=Array(h),k=0;k<h;k++)i[k]=-1,j[k]=-1;i[g+1]=0,j[g+1]=0;for(var l=e-f,m=l%2!=0,n=0,o=0,p=0,q=0,r=0;r<g&&!((new Date).getTime()>d);r++){for(var s=-r+n;s<=r-o;s+=2){for(var t=g+s,u=(w=s==-r||s!=r&&i[t-1]<i[t+1]?i[t+1]:i[t-1]+1)-s;w<e&&u<f&&a.charAt(w)==c.charAt(u);)w++,u++;if(i[t]=w,w>e)o+=2;else if(u>f)n+=2;else if(m&&(y=g+l-s)>=0&&y<h&&-1!=j[y]&&w>=(x=e-j[y]))return this.diff_bisectSplit_(a,c,w,u,d)}for(var v=-r+p;v<=r-q;v+=2){for(var w,x,y=g+v,z=(x=v==-r||v!=r&&j[y-1]<j[y+1]?j[y+1]:j[y-1]+1)-v;x<e&&z<f&&a.charAt(e-x-1)==c.charAt(f-z-1);)x++,z++;if(j[y]=x,x>e)q+=2;else if(z>f)p+=2;else if(!m&&(t=g+l-v)>=0&&t<h&&-1!=i[t]&&(u=g+(w=i[t])-t,w>=(x=e-x)))return this.diff_bisectSplit_(a,c,w,u,d)}}return[new b.Diff(-1,a),new b.Diff(1,c)]},b.prototype.diff_bisectSplit_=function(a,b,c,d,e){var f=a.substring(0,c),g=b.substring(0,d),h=a.substring(c),i=b.substring(d),j=this.diff_main(f,g,!1,e),k=this.diff_main(h,i,!1,e);return j.concat(k)},b.prototype.diff_linesToChars_=function(a,b){var c=[],d={};function e(a){for(var b="",e=0,g=-1,h=c.length;g<a.length-1;){-1==(g=a.indexOf("\n",e))&&(g=a.length-1);var i=a.substring(e,g+1);(d.hasOwnProperty?d.hasOwnProperty(i):void 0!==d[i])?b+=String.fromCharCode(d[i]):(h==f&&(i=a.substring(e),g=a.length),b+=String.fromCharCode(h),d[i]=h,c[h++]=i),e=g+1}return b}c[0]="";var f=4e4,g=e(a);return f=65535,{chars1:g,chars2:e(b),lineArray:c}},b.prototype.diff_charsToLines_=function(a,b){for(var c=0;c<a.length;c++){for(var d=a[c][1],e=[],f=0;f<d.length;f++)e[f]=b[d.charCodeAt(f)];a[c][1]=e.join("")}},b.prototype.diff_commonPrefix=function(a,b){if(!a||!b||a.charAt(0)!=b.charAt(0))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(f,e)==b.substring(f,e)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e},b.prototype.diff_commonSuffix=function(a,b){if(!a||!b||a.charAt(a.length-1)!=b.charAt(b.length-1))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(a.length-e,a.length-f)==b.substring(b.length-e,b.length-f)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e},b.prototype.diff_commonOverlap_=function(a,b){var c=a.length,d=b.length;if(0==c||0==d)return 0;c>d?a=a.substring(c-d):c<d&&(b=b.substring(0,c));var e=Math.min(c,d);if(a==b)return e;for(var f=0,g=1;;){var h=a.substring(e-g),i=b.indexOf(h);if(-1==i)return f;g+=i,0!=i&&a.substring(e-g)!=b.substring(0,g)||(f=g,g++)}},b.prototype.diff_halfMatch_=function(a,b){if(this.Diff_Timeout<=0)return null;var c=a.length>b.length?a:b,d=a.length>b.length?b:a;if(c.length<4||2*d.length<c.length)return null;var e=this;function f(a,b,c){for(var d,f,g,h,i=a.substring(c,c+Math.floor(a.length/4)),j=-1,k="";-1!=(j=b.indexOf(i,j+1));){var l=e.diff_commonPrefix(a.substring(c),b.substring(j)),m=e.diff_commonSuffix(a.substring(0,c),b.substring(0,j));k.length<m+l&&(k=b.substring(j-m,j)+b.substring(j,j+l),d=a.substring(0,c-m),f=a.substring(c+l),g=b.substring(0,j-m),h=b.substring(j+l))}return 2*k.length>=a.length?[d,f,g,h,k]:null}var g,h,i,j,k,l=f(c,d,Math.ceil(c.length/4)),m=f(c,d,Math.ceil(c.length/2));return l||m?(g=m?l&&l[4].length>m[4].length?l:m:l,a.length>b.length?(h=g[0],i=g[1],j=g[2],k=g[3]):(j=g[0],k=g[1],h=g[2],i=g[3]),[h,i,j,k,g[4]]):null},b.prototype.diff_cleanupSemantic=function(a){for(var c=!1,d=[],e=0,f=null,g=0,h=0,i=0,j=0,k=0;g<a.length;)0==a[g][0]?(d[e++]=g,h=j,i=k,j=0,k=0,f=a[g][1]):(1==a[g][0]?j+=a[g][1].length:k+=a[g][1].length,f&&f.length<=Math.max(h,i)&&f.length<=Math.max(j,k)&&(a.splice(d[e-1],0,new b.Diff(-1,f)),a[d[e-1]+1][0]=1,e--,g=--e>0?d[e-1]:-1,h=0,i=0,j=0,k=0,f=null,c=!0)),g++;for(c&&this.diff_cleanupMerge(a),this.diff_cleanupSemanticLossless(a),g=1;g<a.length;){if(-1==a[g-1][0]&&1==a[g][0]){var l=a[g-1][1],m=a[g][1],n=this.diff_commonOverlap_(l,m),o=this.diff_commonOverlap_(m,l);n>=o?(n>=l.length/2||n>=m.length/2)&&(a.splice(g,0,new b.Diff(0,m.substring(0,n))),a[g-1][1]=l.substring(0,l.length-n),a[g+1][1]=m.substring(n),g++):(o>=l.length/2||o>=m.length/2)&&(a.splice(g,0,new b.Diff(0,l.substring(0,o))),a[g-1][0]=1,a[g-1][1]=m.substring(0,m.length-o),a[g+1][0]=-1,a[g+1][1]=l.substring(o),g++),g++}g++}},b.prototype.diff_cleanupSemanticLossless=function(a){function c(a,c){if(!a||!c)return 6;var d=a.charAt(a.length-1),e=c.charAt(0),f=d.match(b.nonAlphaNumericRegex_),g=e.match(b.nonAlphaNumericRegex_),h=f&&d.match(b.whitespaceRegex_),i=g&&e.match(b.whitespaceRegex_),j=h&&d.match(b.linebreakRegex_),k=i&&e.match(b.linebreakRegex_),l=j&&a.match(b.blanklineEndRegex_),m=k&&c.match(b.blanklineStartRegex_);return l||m?5:j||k?4:f&&!h&&i?3:h||i?2:f||g?1:0}for(var d=1;d<a.length-1;){if(0==a[d-1][0]&&0==a[d+1][0]){var e=a[d-1][1],f=a[d][1],g=a[d+1][1],h=this.diff_commonSuffix(e,f);if(h){var i=f.substring(f.length-h);e=e.substring(0,e.length-h),f=i+f.substring(0,f.length-h),g=i+g}for(var j=e,k=f,l=g,m=c(e,f)+c(f,g);f.charAt(0)===g.charAt(0);){e+=f.charAt(0),f=f.substring(1)+g.charAt(0),g=g.substring(1);var n=c(e,f)+c(f,g);n>=m&&(m=n,j=e,k=f,l=g)}a[d-1][1]!=j&&(j?a[d-1][1]=j:(a.splice(d-1,1),d--),a[d][1]=k,l?a[d+1][1]=l:(a.splice(d+1,1),d--))}d++}},b.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/,b.whitespaceRegex_=/\s/,b.linebreakRegex_=/[\r\n]/,b.blanklineEndRegex_=/\n\r?\n$/,b.blanklineStartRegex_=/^\r?\n\r?\n/,b.prototype.diff_cleanupEfficiency=function(a){for(var c=!1,d=[],e=0,f=null,g=0,h=!1,i=!1,j=!1,k=!1;g<a.length;)0==a[g][0]?(a[g][1].length<this.Diff_EditCost&&(j||k)?(d[e++]=g,h=j,i=k,f=a[g][1]):(e=0,f=null),j=k=!1):(-1==a[g][0]?k=!0:j=!0,f&&(h&&i&&j&&k||f.length<this.Diff_EditCost/2&&h+i+j+k==3)&&(a.splice(d[e-1],0,new b.Diff(-1,f)),a[d[e-1]+1][0]=1,e--,f=null,h&&i?(j=k=!0,e=0):(g=--e>0?d[e-1]:-1,j=k=!1),c=!0)),g++;c&&this.diff_cleanupMerge(a)},b.prototype.diff_cleanupMerge=function(a){a.push(new b.Diff(0,""));for(var c,d=0,e=0,f=0,g="",h="";d<a.length;)switch(a[d][0]){case 1:f++,h+=a[d][1],d++;break;case -1:e++,g+=a[d][1],d++;break;case 0:e+f>1?(0!==e&&0!==f&&(0!==(c=this.diff_commonPrefix(h,g))&&(d-e-f>0&&0==a[d-e-f-1][0]?a[d-e-f-1][1]+=h.substring(0,c):(a.splice(0,0,new b.Diff(0,h.substring(0,c))),d++),h=h.substring(c),g=g.substring(c)),0!==(c=this.diff_commonSuffix(h,g))&&(a[d][1]=h.substring(h.length-c)+a[d][1],h=h.substring(0,h.length-c),g=g.substring(0,g.length-c))),d-=e+f,a.splice(d,e+f),g.length&&(a.splice(d,0,new b.Diff(-1,g)),d++),h.length&&(a.splice(d,0,new b.Diff(1,h)),d++),d++):0!==d&&0==a[d-1][0]?(a[d-1][1]+=a[d][1],a.splice(d,1)):d++,f=0,e=0,g="",h=""}""===a[a.length-1][1]&&a.pop();var i=!1;for(d=1;d<a.length-1;)0==a[d-1][0]&&0==a[d+1][0]&&(a[d][1].substring(a[d][1].length-a[d-1][1].length)==a[d-1][1]?(a[d][1]=a[d-1][1]+a[d][1].substring(0,a[d][1].length-a[d-1][1].length),a[d+1][1]=a[d-1][1]+a[d+1][1],a.splice(d-1,1),i=!0):a[d][1].substring(0,a[d+1][1].length)==a[d+1][1]&&(a[d-1][1]+=a[d+1][1],a[d][1]=a[d][1].substring(a[d+1][1].length)+a[d+1][1],a.splice(d+1,1),i=!0)),d++;i&&this.diff_cleanupMerge(a)},b.prototype.diff_xIndex=function(a,b){var c,d=0,e=0,f=0,g=0;for(c=0;c<a.length&&(1!==a[c][0]&&(d+=a[c][1].length),-1!==a[c][0]&&(e+=a[c][1].length),!(d>b));c++)f=d,g=e;return a.length!=c&&-1===a[c][0]?g:g+(b-f)},b.prototype.diff_prettyHtml=function(a){for(var b=[],c=/&/g,d=/</g,e=/>/g,f=/\n/g,g=0;g<a.length;g++){var h=a[g][0],i=a[g][1].replace(c,"&amp;").replace(d,"&lt;").replace(e,"&gt;").replace(f,"&para;<br>");switch(h){case 1:b[g]='<ins style="background:#e6ffe6;">'+i+"</ins>";break;case -1:b[g]='<del style="background:#ffe6e6;">'+i+"</del>";break;case 0:b[g]="<span>"+i+"</span>"}}return b.join("")},b.prototype.diff_text1=function(a){for(var b=[],c=0;c<a.length;c++)1!==a[c][0]&&(b[c]=a[c][1]);return b.join("")},b.prototype.diff_text2=function(a){for(var b=[],c=0;c<a.length;c++)-1!==a[c][0]&&(b[c]=a[c][1]);return b.join("")},b.prototype.diff_levenshtein=function(a){for(var b=0,c=0,d=0,e=0;e<a.length;e++){var f=a[e][0],g=a[e][1];switch(f){case 1:c+=g.length;break;case -1:d+=g.length;break;case 0:b+=Math.max(c,d),c=0,d=0}}return b+Math.max(c,d)},b.prototype.diff_toDelta=function(a){for(var b=[],c=0;c<a.length;c++)switch(a[c][0]){case 1:b[c]="+"+encodeURI(a[c][1]);break;case -1:b[c]="-"+a[c][1].length;break;case 0:b[c]="="+a[c][1].length}return b.join(" ").replace(/%20/g," ")},b.prototype.diff_fromDelta=function(a,c){for(var d=[],e=0,f=0,g=c.split(/\t/g),h=0;h<g.length;h++){var i=g[h].substring(1);switch(g[h].charAt(0)){case"+":try{d[e++]=new b.Diff(1,decodeURI(i))}catch(a){throw Error("Illegal escape in diff_fromDelta: "+i)}break;case"-":case"=":var j=parseInt(i,10);if(isNaN(j)||j<0)throw Error("Invalid number in diff_fromDelta: "+i);var k=a.substring(f,f+=j);"="==g[h].charAt(0)?d[e++]=new b.Diff(0,k):d[e++]=new b.Diff(-1,k);break;default:if(g[h])throw Error("Invalid diff operation in diff_fromDelta: "+g[h])}}if(f!=a.length)throw Error("Delta length ("+f+") does not equal source text length ("+a.length+").");return d},b.prototype.match_main=function(a,b,c){if(null==a||null==b||null==c)throw Error("Null input. (match_main)");return c=Math.max(0,Math.min(c,a.length)),a==b?0:a.length?a.substring(c,c+b.length)==b?c:this.match_bitap_(a,b,c):-1},b.prototype.match_bitap_=function(a,b,c){if(b.length>this.Match_MaxBits)throw Error("Pattern too long for this browser.");var d=this.match_alphabet_(b),e=this;function f(a,d){var f=a/b.length,g=Math.abs(c-d);return e.Match_Distance?f+g/e.Match_Distance:g?1:f}var g=this.Match_Threshold,h=a.indexOf(b,c);-1!=h&&(g=Math.min(f(0,h),g),-1!=(h=a.lastIndexOf(b,c+b.length))&&(g=Math.min(f(0,h),g)));var i,j,k=1<<b.length-1;h=-1;for(var l,m=b.length+a.length,n=0;n<b.length;n++){for(i=0,j=m;i<j;)f(n,c+j)<=g?i=j:m=j,j=Math.floor((m-i)/2+i);m=j;var o=Math.max(1,c-j+1),p=Math.min(c+j,a.length)+b.length,q=Array(p+2);q[p+1]=(1<<n)-1;for(var r=p;r>=o;r--){var s=d[a.charAt(r-1)];if(q[r]=0===n?(q[r+1]<<1|1)&s:(q[r+1]<<1|1)&s|(l[r+1]|l[r])<<1|1|l[r+1],q[r]&k){var t=f(n,r-1);if(t<=g){if(g=t,!((h=r-1)>c))break;o=Math.max(1,2*c-h)}}}if(f(n+1,c)>g)break;l=q}return h},b.prototype.match_alphabet_=function(a){for(var b={},c=0;c<a.length;c++)b[a.charAt(c)]=0;for(c=0;c<a.length;c++)b[a.charAt(c)]|=1<<a.length-c-1;return b},b.prototype.patch_addContext_=function(a,c){if(0!=c.length){if(null===a.start2)throw Error("patch not initialized");for(var d=c.substring(a.start2,a.start2+a.length1),e=0;c.indexOf(d)!=c.lastIndexOf(d)&&d.length<this.Match_MaxBits-this.Patch_Margin-this.Patch_Margin;)e+=this.Patch_Margin,d=c.substring(a.start2-e,a.start2+a.length1+e);e+=this.Patch_Margin;var f=c.substring(a.start2-e,a.start2);f&&a.diffs.unshift(new b.Diff(0,f));var g=c.substring(a.start2+a.length1,a.start2+a.length1+e);g&&a.diffs.push(new b.Diff(0,g)),a.start1-=f.length,a.start2-=f.length,a.length1+=f.length+g.length,a.length2+=f.length+g.length}},b.prototype.patch_make=function(a,c,d){var e,f;if("string"==typeof a&&"string"==typeof c&&void 0===d)e=a,(f=this.diff_main(e,c,!0)).length>2&&(this.diff_cleanupSemantic(f),this.diff_cleanupEfficiency(f));else if(a&&"object"==typeof a&&void 0===c&&void 0===d)f=a,e=this.diff_text1(f);else if("string"==typeof a&&c&&"object"==typeof c&&void 0===d)e=a,f=c;else{if("string"!=typeof a||"string"!=typeof c||!d||"object"!=typeof d)throw Error("Unknown call format to patch_make.");e=a,f=d}if(0===f.length)return[];for(var g=[],h=new b.patch_obj,i=0,j=0,k=0,l=e,m=e,n=0;n<f.length;n++){var o=f[n][0],p=f[n][1];switch(i||0===o||(h.start1=j,h.start2=k),o){case 1:h.diffs[i++]=f[n],h.length2+=p.length,m=m.substring(0,k)+p+m.substring(k);break;case -1:h.length1+=p.length,h.diffs[i++]=f[n],m=m.substring(0,k)+m.substring(k+p.length);break;case 0:p.length<=2*this.Patch_Margin&&i&&f.length!=n+1?(h.diffs[i++]=f[n],h.length1+=p.length,h.length2+=p.length):p.length>=2*this.Patch_Margin&&i&&(this.patch_addContext_(h,l),g.push(h),h=new b.patch_obj,i=0,l=m,j=k)}1!==o&&(j+=p.length),-1!==o&&(k+=p.length)}return i&&(this.patch_addContext_(h,l),g.push(h)),g},b.prototype.patch_deepCopy=function(a){for(var c=[],d=0;d<a.length;d++){var e=a[d],f=new b.patch_obj;f.diffs=[];for(var g=0;g<e.diffs.length;g++)f.diffs[g]=new b.Diff(e.diffs[g][0],e.diffs[g][1]);f.start1=e.start1,f.start2=e.start2,f.length1=e.length1,f.length2=e.length2,c[d]=f}return c},b.prototype.patch_apply=function(a,b){if(0==a.length)return[b,[]];a=this.patch_deepCopy(a);var c=this.patch_addPadding(a);b=c+b+c,this.patch_splitMax(a);for(var d=0,e=[],f=0;f<a.length;f++){var g,h,i=a[f].start2+d,j=this.diff_text1(a[f].diffs),k=-1;if(j.length>this.Match_MaxBits?-1!=(g=this.match_main(b,j.substring(0,this.Match_MaxBits),i))&&(-1==(k=this.match_main(b,j.substring(j.length-this.Match_MaxBits),i+j.length-this.Match_MaxBits))||g>=k)&&(g=-1):g=this.match_main(b,j,i),-1==g)e[f]=!1,d-=a[f].length2-a[f].length1;else if(e[f]=!0,d=g-i,j==(h=-1==k?b.substring(g,g+j.length):b.substring(g,k+this.Match_MaxBits)))b=b.substring(0,g)+this.diff_text2(a[f].diffs)+b.substring(g+j.length);else{var l=this.diff_main(j,h,!1);if(j.length>this.Match_MaxBits&&this.diff_levenshtein(l)/j.length>this.Patch_DeleteThreshold)e[f]=!1;else{this.diff_cleanupSemanticLossless(l);for(var m,n=0,o=0;o<a[f].diffs.length;o++){var p=a[f].diffs[o];0!==p[0]&&(m=this.diff_xIndex(l,n)),1===p[0]?b=b.substring(0,g+m)+p[1]+b.substring(g+m):-1===p[0]&&(b=b.substring(0,g+m)+b.substring(g+this.diff_xIndex(l,n+p[1].length))),-1!==p[0]&&(n+=p[1].length)}}}}return[b=b.substring(c.length,b.length-c.length),e]},b.prototype.patch_addPadding=function(a){for(var c=this.Patch_Margin,d="",e=1;e<=c;e++)d+=String.fromCharCode(e);for(e=0;e<a.length;e++)a[e].start1+=c,a[e].start2+=c;var f=a[0],g=f.diffs;if(0==g.length||0!=g[0][0])g.unshift(new b.Diff(0,d)),f.start1-=c,f.start2-=c,f.length1+=c,f.length2+=c;else if(c>g[0][1].length){var h=c-g[0][1].length;g[0][1]=d.substring(g[0][1].length)+g[0][1],f.start1-=h,f.start2-=h,f.length1+=h,f.length2+=h}return 0==(g=(f=a[a.length-1]).diffs).length||0!=g[g.length-1][0]?(g.push(new b.Diff(0,d)),f.length1+=c,f.length2+=c):c>g[g.length-1][1].length&&(h=c-g[g.length-1][1].length,g[g.length-1][1]+=d.substring(0,h),f.length1+=h,f.length2+=h),d},b.prototype.patch_splitMax=function(a){for(var c=this.Match_MaxBits,d=0;d<a.length;d++)if(!(a[d].length1<=c)){var e=a[d];a.splice(d--,1);for(var f=e.start1,g=e.start2,h="";0!==e.diffs.length;){var i=new b.patch_obj,j=!0;for(i.start1=f-h.length,i.start2=g-h.length,""!==h&&(i.length1=i.length2=h.length,i.diffs.push(new b.Diff(0,h)));0!==e.diffs.length&&i.length1<c-this.Patch_Margin;){var k=e.diffs[0][0],l=e.diffs[0][1];1===k?(i.length2+=l.length,g+=l.length,i.diffs.push(e.diffs.shift()),j=!1):-1===k&&1==i.diffs.length&&0==i.diffs[0][0]&&l.length>2*c?(i.length1+=l.length,f+=l.length,j=!1,i.diffs.push(new b.Diff(k,l)),e.diffs.shift()):(l=l.substring(0,c-i.length1-this.Patch_Margin),i.length1+=l.length,f+=l.length,0===k?(i.length2+=l.length,g+=l.length):j=!1,i.diffs.push(new b.Diff(k,l)),l==e.diffs[0][1]?e.diffs.shift():e.diffs[0][1]=e.diffs[0][1].substring(l.length))}h=(h=this.diff_text2(i.diffs)).substring(h.length-this.Patch_Margin);var m=this.diff_text1(e.diffs).substring(0,this.Patch_Margin);""!==m&&(i.length1+=m.length,i.length2+=m.length,0!==i.diffs.length&&0===i.diffs[i.diffs.length-1][0]?i.diffs[i.diffs.length-1][1]+=m:i.diffs.push(new b.Diff(0,m))),j||a.splice(++d,0,i)}}},b.prototype.patch_toText=function(a){for(var b=[],c=0;c<a.length;c++)b[c]=a[c];return b.join("")},b.prototype.patch_fromText=function(a){var c=[];if(!a)return c;for(var d=a.split("\n"),e=0,f=/^@@ -(\d+),?(\d*) \+(\d+),?(\d*) @@$/;e<d.length;){var g=d[e].match(f);if(!g)throw Error("Invalid patch string: "+d[e]);var h=new b.patch_obj;for(c.push(h),h.start1=parseInt(g[1],10),""===g[2]?(h.start1--,h.length1=1):"0"==g[2]?h.length1=0:(h.start1--,h.length1=parseInt(g[2],10)),h.start2=parseInt(g[3],10),""===g[4]?(h.start2--,h.length2=1):"0"==g[4]?h.length2=0:(h.start2--,h.length2=parseInt(g[4],10)),e++;e<d.length;){var i=d[e].charAt(0);try{var j=decodeURI(d[e].substring(1))}catch(a){throw Error("Illegal escape in patch_fromText: "+j)}if("-"==i)h.diffs.push(new b.Diff(-1,j));else if("+"==i)h.diffs.push(new b.Diff(1,j));else if(" "==i)h.diffs.push(new b.Diff(0,j));else{if("@"==i)break;if(""!==i)throw Error('Invalid patch mode "'+i+'" in: '+j)}e++}}return c},(b.patch_obj=function(){this.diffs=[],this.start1=null,this.start2=null,this.length1=0,this.length2=0}).prototype.toString=function(){for(var a,b=["@@ -"+(0===this.length1?this.start1+",0":1==this.length1?this.start1+1:this.start1+1+","+this.length1)+" +"+(0===this.length2?this.start2+",0":1==this.length2?this.start2+1:this.start2+1+","+this.length2)+" @@\n"],c=0;c<this.diffs.length;c++){switch(this.diffs[c][0]){case 1:a="+";break;case -1:a="-";break;case 0:a=" "}b[c+1]=a+encodeURI(this.diffs[c][1])+"\n"}return b.join("").replace(/%20/g," ")},a.exports=b,a.exports.diff_match_patch=b,a.exports.DIFF_DELETE=-1,a.exports.DIFF_INSERT=1,a.exports.DIFF_EQUAL=0});function yL({taskId:a,fromHash:b,toHash:c}){let d=bX.i.getTaskDiff.useQuery({taskId:a,fromHash:b,toHash:c},{refetchOnWindowFocus:!1,staleTime:6e4}),e=(0,u.useMemo)(()=>{if(!d.data?.diff)return null;try{return function(a){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},c=function(a){if(a.startsWith("diff --git"))return a;var b=a.indexOf("\n"),c=a.indexOf("\n",b+1),d=a.slice(0,b),e=a.slice(b+1,c),f=d.split(" ").slice(1,-3).join(" "),g=e.split(" ").slice(1,-3).join(" ");return["diff --git a/".concat(f," b/").concat(g),"index 1111111..2222222 100644","--- a/".concat(f),"+++ b/".concat(g),a.slice(c+1)].join("\n")}(a.trimStart());return v2.parse(c).map(function(a){var c;return c=a.hunks.map(function(a){var c,d="zip"===b.nearbySequences?(c=a.changes.reduce(function(a,b,c){var d=vV(a,3),e=d[0],f=d[1],g=d[2];return f?v3(b)&&g>=0?(e.splice(g+1,0,b),[e,b,g+2]):(e.push(b),[e,b,v4(b)&&v4(f)?g:c]):(e.push(b),[e,b,v4(b)?c:-1])},[[],null,-1]),vV(c,1)[0]):a.changes;return vS(vS({},a),{},{isPlain:!1,changes:d})}),vS(vS({},a),{},{hunks:c})})}(d.data.diff)[0]||null}catch(a){return console.error("Error parsing diff:",a),null}},[d.data?.diff]);if(d.isLoading)return(0,t.jsxs)(y.Stack,{align:"center",py:"xl",children:[(0,t.jsx)(vL.Loader,{size:"md"}),(0,t.jsx)(B.Text,{c:"dimmed",children:"Loading diff..."})]});if(d.isError)return(0,t.jsxs)(ve.Alert,{color:"red",icon:(0,t.jsx)(vO,{size:16}),children:["Failed to load diff: ",d.error?.message]});let f=d.data;return f?.diff&&""!==f.diff.trim()?e?(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(B.Text,{fw:500,size:"sm",children:"Changes Summary"}),(0,t.jsxs)(bZ.Badge,{variant:"light",color:"green",size:"sm",children:["+",f.additions]}),(0,t.jsxs)(bZ.Badge,{variant:"light",color:"red",size:"sm",children:["-",f.deletions]})]}),(0,t.jsx)(z.Group,{gap:"xs",children:(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["From ",b.substring(0,7)," to ",c.substring(0,7)]})})]}),(0,t.jsx)(bY.Paper,{withBorder:!0,children:(0,t.jsx)(vM.ScrollArea,{h:500,children:(0,t.jsx)("div",{style:{padding:"16px"},children:(0,t.jsx)(yE,{viewType:"split",diffType:e.type,hunks:e.hunks,renderToken:(a,b,c)=>b(a,c),children:a=>a.map(a=>(0,t.jsx)(yB,{hunk:a},`${a.oldStart}-${a.oldLines}-${a.newStart}-${a.newLines}`))})})})}),e&&(0,t.jsx)(bY.Paper,{p:"sm",withBorder:!0,children:(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["File: ",e.newPath||e.oldPath]}),(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["• Type: ",e.type]}),e.oldRevision&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["• From: ",e.oldRevision.substring(0,7)]}),e.newRevision&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["• To: ",e.newRevision.substring(0,7)]})]})})]}):(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsx)(ve.Alert,{color:"yellow",icon:(0,t.jsx)(vP,{size:16}),children:"Unable to parse diff for visual display. Showing raw diff below."}),(0,t.jsx)(bY.Paper,{withBorder:!0,p:"md",children:(0,t.jsx)(vM.ScrollArea,{h:400,children:(0,t.jsx)(B.Text,{component:"pre",size:"sm",style:{whiteSpace:"pre-wrap"},children:f.diff})})})]}):(0,t.jsx)(ve.Alert,{color:"blue",icon:(0,t.jsx)(vP,{size:16}),children:"No changes found between these versions."})}function yM({task:a,onClose:b}){let[c,d]=(0,u.useState)(null),[e,f]=(0,u.useState)(!1),[g,h]=(0,u.useState)(!1),[i,j]=(0,u.useState)(null),[k,l]=(0,u.useState)(null),[m,n]=(0,u.useState)(1),o=bX.i.getTaskHistory.useQuery({taskId:a.id,limit:100},{refetchOnWindowFocus:!1,staleTime:3e4}),p=bX.i.getTaskVersion.useQuery({taskId:a.id,commitHash:c},{enabled:!!c,refetchOnWindowFocus:!1});if(o.isLoading)return(0,t.jsxs)(y.Stack,{align:"center",py:"xl",children:[(0,t.jsx)(vL.Loader,{size:"md"}),(0,t.jsx)(B.Text,{c:"dimmed",children:"Loading task history..."})]});if(o.isError)return(0,t.jsxs)(ve.Alert,{color:"red",icon:(0,t.jsx)(vO,{size:16}),children:["Failed to load task history: ",o.error?.message]});if(!o.data?.available)return(0,t.jsx)(ve.Alert,{color:"yellow",icon:(0,t.jsx)(vP,{size:16}),children:o.data?.error?`Git history not available: ${o.data.error}`:"Git repository not available or task file not tracked in Git"});let q=o.data.history||[];if(0===q.length)return(0,t.jsx)(ve.Alert,{color:"blue",icon:(0,t.jsx)(vP,{size:16}),children:"No history available for this task. The task file may be new or not yet committed to Git."});let r=Math.ceil(q.length/20),s=(m-1)*20,v=q.slice(s,s+20);return(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(A.Title,{order:4,children:"Task History"}),(0,t.jsxs)(bZ.Badge,{variant:"light",size:"sm",children:[q.length," ",1===q.length?"commit":"commits"]})]}),b&&(0,t.jsx)(H.Button,{variant:"subtle",size:"xs",onClick:b,children:"Close"})]}),i&&!k&&(0,t.jsx)(ve.Alert,{color:"blue",icon:(0,t.jsx)(vP,{size:16}),children:(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsxs)(B.Text,{size:"sm",children:["Selected"," ",(0,t.jsx)(B.Text,{span:!0,fw:500,children:i.substring(0,7)})," ","for comparison. Click another commit to compare."]}),(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>j(null),children:"Cancel"})]})}),(0,t.jsxs)(bY.Paper,{withBorder:!0,p:"md",children:[(0,t.jsx)(vM.ScrollArea,{h:500,children:(0,t.jsx)(vq.Timeline,{active:-1,bulletSize:24,lineWidth:2,children:v.map((a,b)=>{let c=i===a.commitHash,e=a.changes.additions>0||a.changes.deletions>0;return(0,t.jsx)(vq.Timeline.Item,{bullet:(0,t.jsx)(ca,{size:12}),title:(0,t.jsxs)(z.Group,{gap:"xs",wrap:"nowrap",children:[(0,t.jsx)(B.Text,{fw:500,size:"sm",truncate:!0,style:{flex:1},children:a.message}),(0,t.jsx)(bZ.Badge,{variant:c?"filled":"light",size:"xs",color:c?"blue":"gray",children:a.shortHash})]}),children:(0,t.jsxs)(y.Stack,{gap:"xs",children:[(0,t.jsxs)(z.Group,{gap:"xs",wrap:"nowrap",children:[(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["by"," ",(0,t.jsx)(B.Text,{span:!0,fw:500,children:a.author})]}),(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:"•"}),(0,t.jsx)(b_.Tooltip,{label:a.date.toLocaleString(),children:(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:(a=>{let b=new Date().getTime()-a.getTime(),c=Math.floor(b/864e5);if(0===c){let a=Math.floor(b/36e5);if(0===a){let a=Math.floor(b/6e4);return a<=1?"just now":`${a} minutes ago`}return 1===a?"1 hour ago":`${a} hours ago`}return 1===c?"yesterday":c<7?`${c} days ago`:a.toLocaleDateString()})(a.date)})}),e&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:"•"}),(0,t.jsxs)(z.Group,{gap:4,children:[a.changes.additions>0&&(0,t.jsxs)(B.Text,{size:"xs",c:"green",children:["+",a.changes.additions]}),a.changes.deletions>0&&(0,t.jsxs)(B.Text,{size:"xs",c:"red",children:["-",a.changes.deletions]})]})]})]}),(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(b_.Tooltip,{label:"View file content at this version",children:(0,t.jsx)(C.ActionIcon,{variant:"subtle",size:"sm",onClick:()=>{d(a.commitHash),f(!0)},children:(0,t.jsx)(vj,{size:14})})}),(0,t.jsx)(b_.Tooltip,{label:i?i===a.commitHash?"Cancel comparison":"Compare with selected":"Select for comparison",children:(0,t.jsx)(C.ActionIcon,{variant:c?"filled":"subtle",size:"sm",color:c?"blue":"gray",onClick:()=>{var b;return b=a.commitHash,void(i?i===b?j(null):(l(b),h(!0)):j(b))},children:(0,t.jsx)(vQ,{size:14})})}),b<v.length-1&&(0,t.jsx)(b_.Tooltip,{label:"Compare with next commit",children:(0,t.jsx)(C.ActionIcon,{variant:"subtle",size:"sm",onClick:()=>{var c,d;return c=v[b+1].commitHash,d=a.commitHash,void(j(c),l(d),h(!0))},children:(0,t.jsx)(cM,{size:14})})})]})]})},a.commitHash)})})}),r>1&&(0,t.jsx)(z.Group,{justify:"center",mt:"md",children:(0,t.jsx)(vN.Pagination,{value:m,onChange:n,total:r,size:"sm"})})]}),(0,t.jsxs)(cG.Modal,{opened:e,onClose:()=>{f(!1),d(null)},title:(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(B.Text,{fw:500,children:"Task Content"}),c&&(0,t.jsx)(bZ.Badge,{variant:"light",size:"sm",children:c.substring(0,7)})]}),size:"860px",styles:{body:{maxHeight:"calc(100vh - 200px)",overflowY:"auto"}},children:[p.isLoading&&(0,t.jsxs)(y.Stack,{align:"center",py:"xl",children:[(0,t.jsx)(vL.Loader,{size:"md"}),(0,t.jsx)(B.Text,{c:"dimmed",children:"Loading version content..."})]}),p.isError&&(0,t.jsxs)(ve.Alert,{color:"red",icon:(0,t.jsx)(vO,{size:16}),children:["Failed to load version: ",p.error?.message]}),p.data&&(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsxs)(B.Text,{size:"sm",c:"dimmed",children:["by"," ",(0,t.jsx)(B.Text,{span:!0,fw:500,children:p.data.author})]}),(0,t.jsxs)(B.Text,{size:"sm",c:"dimmed",children:["on ",p.data.date.toLocaleString()]})]}),(0,t.jsx)(vM.ScrollArea,{h:400,children:(0,t.jsx)(bY.Paper,{p:"md",withBorder:!0,children:(0,t.jsx)(B.Text,{component:"pre",size:"sm",style:{whiteSpace:"pre-wrap"},children:p.data.content})})})]})]}),(0,t.jsx)(cG.Modal,{opened:g,onClose:()=>{h(!1),j(null),l(null)},title:(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(B.Text,{fw:500,children:"Compare Versions"}),i&&k&&(0,t.jsxs)(z.Group,{gap:4,children:[(0,t.jsx)(bZ.Badge,{variant:"light",size:"sm",color:"red",children:i.substring(0,7)}),(0,t.jsx)(B.Text,{size:"sm",children:"→"}),(0,t.jsx)(bZ.Badge,{variant:"light",size:"sm",color:"green",children:k.substring(0,7)})]})]}),size:"860px",styles:{body:{maxHeight:"calc(100vh - 200px)",overflowY:"auto"}},children:i&&k&&(0,t.jsx)(yL,{taskId:a.id,fromHash:i,toHash:k})})]})}yK.DIFF_EQUAL,yK.DIFF_DELETE,yK.DIFF_INSERT,c(47107);let yN=[{value:"feature",label:"Feature"},{value:"bug",label:"Bug"},{value:"chore",label:"Chore"},{value:"refactor",label:"Refactor"},{value:"test",label:"Test"},{value:"doc",label:"Documentation"}],yO=[{value:"backlog",label:"Backlog"},{value:"in-progress",label:"In Progress"},{value:"review",label:"Review"},{value:"done",label:"Done"}],yP=[{value:"low",label:"Low"},{value:"medium",label:"Medium"},{value:"high",label:"High"}];function yQ({opened:a,onClose:b,mode:c,taskData:d,taskId:e,defaultStatus:f}){var g,h;let i="edit"===c?e||d?.id:null,[j,k]=(0,u.useState)({}),[l,m]=(0,u.useState)({}),[n,o]=(0,u.useState)(!1),[p,q]=(0,u.useState)(!1),[r,s]=(0,u.useState)("details"),[v,w]=(0,u.useState)(!1),x=(0,cn.useRouter)(),C=(0,cn.useSearchParams)(),D=(0,cn.usePathname)()??"/",E=(0,u.useRef)(null),F=(0,u.useRef)(!1),G=(0,u.useRef)(!1),J=(0,u.useRef)(null),K=(0,u.useRef)(null),L=(0,u.useRef)(""),M=(0,u.useRef)({}),N=(0,u.useRef)({}),O=(0,cb.jE)(),P=cd(i||"");(0,u.useMemo)(()=>C?.get("tab")??null,[C]);let{data:Q,error:R}=bX.i.getTask.useQuery({id:i},{enabled:!!i&&a&&"edit"===c,refetchOnMount:!0,refetchOnWindowFocus:!1});g="edit"===c&&i||void 0,h=a=>{if(a&&a.id===i&&"edit"===c){F.current=!0;let b={title:a.title,content:a.content,type:a.type,status:a.status,priority:a.priority,due_date:a.due_date},c=M.current,d=N.current,e=a=>c[a]!==d[a],f={title:e("title")?c.title:b.title,content:e("content")?c.content:b.content,type:e("type")?c.type:b.type,status:e("status")?c.status:b.status,priority:e("priority")?c.priority:b.priority,due_date:e("due_date")?c.due_date:b.due_date},g={title:e("title")?d.title:b.title,content:e("content")?d.content:b.content,type:e("type")?d.type:b.type,status:e("status")?d.status:b.status,priority:e("priority")?d.priority:b.priority,due_date:e("due_date")?d.due_date:b.due_date};k(f),m(g),setTimeout(()=>{F.current=!1},100)}},bX.i.onTaskUpdate.useSubscription({taskId:g},{enabled:!!g&&!!h,onData:a=>{"update"===a.type&&a.task&&h&&h(a.task)},onError:a=>{console.error("Task subscription error:",a)}});let S=bX.i.useUtils(),T=bX.i.listProviders.useQuery(void 0,{refetchOnWindowFocus:!1,staleTime:6e4}),U=bX.i.getRoutingPolicy.useQuery(void 0,{refetchOnWindowFocus:!1,staleTime:6e4}),V=bX.i.setOperationConfig?.useMutation?.()||{mutateAsync:async a=>{},isPending:!1},W=bX.i.openInEditor.useMutation(),X=bX.i.openInTerminal?.useMutation?.()||{mutateAsync:async()=>{},isPending:!1},Y=bX.i.createWorktree.useMutation({onSuccess:async()=>{await S.listWorktrees.invalidate()}}),Z=bX.i.cleanupWorktree?.useMutation?.({onSuccess:async()=>{await S.listWorktrees.invalidate()}}),$=bX.i.createTask.useMutation({onSuccess:a=>{O.invalidateQueries({queryKey:[["listTasks"]]}),I.notifications.show({title:"Task created",message:`${a.id}: ${a.title}`,color:"green"}),ae()}}),_=bX.i.updateTask.useMutation({onSuccess:(a,b)=>{if(S.listTasks.invalidate(),b){let{id:a,...c}=b;m({...l,...c}),void 0!==c.content&&(L.current=c.content)}o(!0),J.current&&clearTimeout(J.current),J.current=setTimeout(()=>{o(!1)},2e3)},onError:a=>{console.warn("Auto-save failed:",a.message)}}),aa=bX.i.deleteTask.useMutation({onSuccess:()=>{S.listTasks.invalidate(),b()}}),ab=bX.i.commitChanges?.useMutation({onSuccess:()=>{S.listTasks.invalidate(),m({...j}),q(!0),K.current&&clearTimeout(K.current),K.current=setTimeout(()=>{q(!1)},3e3)},onError:a=>{console.error("Git commit failed:",a);let b=a.message||"Unknown error occurred";b.includes("not found")?alert("Failed to commit: Task may have been deleted or moved. Please refresh and try again."):alert("Failed to create git commit: "+b)}});(0,u.useCallback)((a,b)=>{E.current&&clearTimeout(E.current),E.current=setTimeout(()=>{let d=(a.title??b.title??"").trim();if("edit"===c&&""===d)return;let e=a.title!==b.title||a.content!==b.content||a.type!==b.type||a.status!==b.status||a.priority!==b.priority||a.due_date!==b.due_date;Q?.id&&e&&!_.isPending&&_.mutate({id:Q.id,...a})},1e3)},[Q?.id,_,c]);let ac=(0,u.useCallback)(()=>{E.current&&clearTimeout(E.current),Q?.id&&!_.isPending&&_.mutate({id:Q.id,...j})},[Q?.id,j,_]),ad=()=>{j.title&&$.mutate({title:j.title,type:j.type,status:j.status,priority:j.priority,due_date:j.due_date||"",content:j.content||""})};if("edit"===c&&!Q&&!d)return null;let ae=()=>{s("details"),"create"===c&&k({title:"",type:"feature",status:f||"backlog",priority:"medium",due_date:"",content:""}),b()},af=async()=>{if(al)try{await Y.mutateAsync({taskId:al.id}),await S.listWorktrees.invalidate()}catch(a){console.error("Failed to create worktree:",a)}},ag=async()=>{if(P?.path)return P.path;if(al)try{await Y.mutateAsync({taskId:al.id});let a=await S.getWorktreeInfo?.fetch?.({taskId:al.id});if(a&&"object"==typeof a&&"path"in a)return a.path;await S.listWorktrees.invalidate();return}catch(a){console.error("Failed to ensure worktree:",a);return}},ah=async()=>{try{let a=await ag()||P?.path;if(!a)return;await W.mutateAsync({worktreePath:a})}catch(a){console.error("Failed to open editor:",a)}},ai=async()=>{try{let a=await ag()||P?.path;if(!a)return;await X.mutateAsync({worktreePath:a})}catch(a){console.error("Failed to open Terminal:",a)}},aj=async()=>{if(al&&P?.path&&confirm("Remove this worktree and its branch? Uncommitted changes will be lost."))try{if(Z)await Z.mutateAsync({taskId:al.id,worktreePath:P.path,branchName:P.branchName,isConnectedToTask:!0,force:!0});else if(bX.i.deleteWorktree?.useMutation){let a=bX.i.deleteWorktree.useMutation();await a.mutateAsync({taskId:al.id,force:!0})}await S.listWorktrees.invalidate()}catch(a){console.error("Failed to cleanup worktree:",a)}},ak=a=>{if(a){let b="create"===c&&"details"!==a?"details":a;s(b);let d=cN(D,C,"tab","details"===b?null:b);x.push(d,{scroll:!1})}},al=d||Q;return(0,t.jsxs)(cG.Modal,{opened:a,onClose:ae,title:"create"===c?"Create New Task":(0,t.jsxs)(y.Stack,{gap:"xs",children:[(0,t.jsxs)(z.Group,{justify:"flex-start",children:[(0,t.jsx)(cH.Code,{children:al?.id}),(0,t.jsx)(B.Text,{children:j.title||al?.title})]}),P&&(0,t.jsx)(vK,{worktree:P,size:"sm",showActions:!0})]}),size:"860px",styles:{body:{maxHeight:"calc(100vh - 200px)",overflowY:"auto"}},children:["create"===c?(0,t.jsxs)(cI.Tabs,{value:r,onChange:ak,children:[(0,t.jsx)(cI.Tabs.List,{children:(0,t.jsx)(cI.Tabs.Tab,{value:"details",leftSection:(0,t.jsx)(b5,{size:16}),children:"Task Details"})}),(0,t.jsxs)(cI.Tabs.Panel,{value:"details",pt:"md",children:[(0,t.jsxs)(y.Stack,{gap:"md",style:{paddingBottom:"10px"},children:[(0,t.jsx)(cu.TextInput,{label:"Title",value:j.title||"",onChange:a=>k({...j,title:a.target.value})}),(0,t.jsxs)(z.Group,{grow:!0,children:[(0,t.jsx)(cw.Select,{label:"Type",value:j.type||"feature",data:yN,onChange:a=>k({...j,type:a})}),(0,t.jsx)(cw.Select,{label:"Status",value:j.status||f||"backlog",data:yO,onChange:a=>k({...j,status:a})}),(0,t.jsx)(cw.Select,{label:"Priority",value:j.priority||"medium",data:yP,onChange:a=>k({...j,priority:a})}),(0,t.jsx)(cu.TextInput,{label:"Due Date",type:"date",value:j.due_date||"",onChange:a=>k({...j,due_date:a.target.value})})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsxs)(z.Group,{justify:"space-between",mb:"xs",children:[(0,t.jsx)(B.Text,{size:"sm",fw:500,children:"Content"}),(0,t.jsx)(z.Group,{gap:"sm",children:al&&(0,t.jsx)(t.Fragment,{children:(0,t.jsxs)(cJ.Menu,{withinPortal:!0,position:"bottom-start",shadow:"md",children:[(0,t.jsx)(cJ.Menu.Target,{children:(0,t.jsx)(H.Button,{size:"xs",variant:"outline",loading:T.isLoading,children:(()=>{let a=U.data,b=a?.operations?.improve_task,c=b?.provider||a?.defaultProvider||"Provider",d=b?.model?`:${b.model}`:"";return`Improve Settings: ${c}${d}`})()})}),(0,t.jsxs)(cJ.Menu.Dropdown,{children:[T.isLoading&&(0,t.jsx)(cJ.Menu.Label,{children:"Loading providers…"}),!T.isLoading&&(!T.data||0===T.data.length)&&(0,t.jsx)(cJ.Menu.Label,{children:"No providers found"}),T.data?.filter(a=>a.available).map((a,b)=>(0,t.jsxs)("div",{children:[(0,t.jsx)(cJ.Menu.Label,{children:a.displayName||a.name}),(a.models&&a.models.length>0?a.models:["default"]).map(b=>{let c="string"==typeof b?b:b.id||String(b),d="string"==typeof b?b:b.name||b.id||String(b);return(0,t.jsxs)(cJ.Menu.Item,{onClick:async()=>{try{await V.mutateAsync({operation:"improve_task",config:{provider:a.name,model:c}}),await U.refetch()}catch(a){console.error("Failed to set improve_task routing:",a)}},children:[a.name,":",d]},`improve-${a.name}:${c}`)}),b<(T.data?.length||1)-1&&(0,t.jsx)(b0.Divider,{my:4})]},`improve-${a.name}-${b}`))]})]})})})]}),(0,t.jsx)(u_,{value:j.content||"",onChange:a=>k(b=>({...b,content:a})),placeholder:"Task description and acceptance criteria...",minHeight:"200px"})]})]}),(0,t.jsxs)(z.Group,{justify:"space-between",style:{position:"sticky",bottom:"-20px",left:0,right:0,padding:"16px",backgroundColor:"var(--mantine-color-body)",borderTop:"1px solid var(--mantine-color-default-border)",marginLeft:"-16px",marginRight:"-16px",marginBottom:"-16px",zIndex:10},children:[(0,t.jsx)(z.Group,{}),(0,t.jsx)(z.Group,{justify:"flex-end",children:(0,t.jsx)(H.Button,{onClick:ad,leftSection:(0,t.jsx)(cK,{size:16}),disabled:!(j.title||"").trim(),loading:$.isPending,children:"Create Task"})})]})]})]}):(0,t.jsxs)(cI.Tabs,{value:r,onChange:ak,children:[(0,t.jsxs)(cI.Tabs.List,{children:[(0,t.jsx)(cI.Tabs.Tab,{value:"details",leftSection:(0,t.jsx)(b5,{size:16}),children:"Task Details"}),"edit"===c&&al&&(0,t.jsx)(cI.Tabs.Tab,{value:"vibing",leftSection:(0,t.jsx)(b7,{size:16}),children:"Vibing"})]}),(0,t.jsxs)(cI.Tabs.Panel,{value:"details",pt:"md",children:[(0,t.jsxs)(y.Stack,{gap:"md",style:{paddingBottom:"10px"},children:[(0,t.jsx)(cu.TextInput,{label:"Title",value:j.title||"",onChange:a=>k({...j,title:a.target.value})}),(0,t.jsxs)(z.Group,{grow:!0,children:[(0,t.jsx)(cw.Select,{label:"Type",value:j.type||al?.type,data:yN,onChange:a=>k({...j,type:a})}),(0,t.jsx)(cw.Select,{label:"Status",value:j.status||al?.status,data:yO,onChange:a=>k({...j,status:a})}),(0,t.jsx)(cw.Select,{label:"Priority",value:j.priority||al?.priority,data:yP,onChange:a=>k({...j,priority:a})}),(0,t.jsx)(cu.TextInput,{label:"Due Date",type:"date",value:j.due_date||al?.due_date||"",onChange:a=>k({...j,due_date:a.target.value})})]}),"edit"===c&&al&&(0,t.jsx)(bY.Paper,{p:"xs",withBorder:!0,children:(0,t.jsxs)(y.Stack,{gap:"xs",children:[(0,t.jsx)(A.Title,{order:6,children:"Quick Actions"}),(0,t.jsxs)(z.Group,{gap:"xs",wrap:"wrap",children:[(0,t.jsx)(H.Button,{size:"xs",onClick:af,loading:Y.isPending,disabled:!!P?.path||Y.isPending,children:"Setup Branch and Worktree"}),(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",color:"red",leftSection:(0,t.jsx)(cL,{size:14}),onClick:aj,loading:!!Z?.isPending,disabled:!P?.path,children:"Cleanup Branch and Worktree"}),(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:ah,children:"Open in Code Editor"}),(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:ai,children:"Open in Terminal"})]})]})}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsxs)(z.Group,{justify:"space-between",mb:"xs",children:[(0,t.jsx)(B.Text,{size:"sm",fw:500,children:"Content"}),(0,t.jsxs)(z.Group,{gap:"sm",children:[n&&(0,t.jsx)(B.Text,{size:"xs",c:"green",fw:500,children:"✅ Auto Saved"}),p&&(0,t.jsx)(B.Text,{size:"xs",c:"blue",fw:500,children:"\uD83C\uDF89 Commit Success"}),al&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(cJ.Menu,{withinPortal:!0,position:"bottom-start",shadow:"md",children:[(0,t.jsx)(cJ.Menu.Target,{children:(0,t.jsx)(H.Button,{size:"xs",variant:"outline",loading:T.isLoading,children:(()=>{let a=U.data,b=a?.operations?.improve_task,c=b?.provider||a?.defaultProvider||"Provider",d=b?.model?`:${b.model}`:"";return`Improve Settings: ${c}${d}`})()})}),(0,t.jsxs)(cJ.Menu.Dropdown,{children:[T.isLoading&&(0,t.jsx)(cJ.Menu.Label,{children:"Loading providers…"}),!T.isLoading&&(!T.data||0===T.data.length)&&(0,t.jsx)(cJ.Menu.Label,{children:"No providers found"}),T.data?.filter(a=>a.available).map((a,b)=>(0,t.jsxs)("div",{children:[(0,t.jsx)(cJ.Menu.Label,{children:a.displayName||a.name}),(a.models&&a.models.length>0?a.models:["default"]).map(b=>{let c="string"==typeof b?b:b.id||String(b),d="string"==typeof b?b:b.name||b.id||String(b);return(0,t.jsxs)(cJ.Menu.Item,{onClick:async()=>{try{await V.mutateAsync({operation:"improve_task",config:{provider:a.name,model:c}}),await U.refetch()}catch(a){console.error("Failed to set improve_task routing:",a)}},children:[a.name,":",d]},`improve2-${a.name}:${c}`)}),b<(T.data?.length||1)-1&&(0,t.jsx)(b0.Divider,{my:4})]},`improve2-${a.name}-${b}`))]})]}),(0,t.jsx)(H.Button,{size:"xs",variant:"outline",leftSection:(0,t.jsx)(cM,{size:14}),onClick:()=>w(!0),children:"View History"}),(0,t.jsx)(vb,{task:al,title:j.title||al.title,type:j.type||al.type,priority:j.priority||al.priority,content:j.content||al.content,onAccept:a=>{"edit"===c&&(G.current=!0),k(b=>({...b,content:a.content,type:a.type,priority:a.priority}))}})]})]})]}),(0,t.jsx)(u_,{value:j.content||"",onChange:a=>k(b=>({...b,content:a})),onSave:"edit"===c?ac:void 0,placeholder:"Task description and acceptance criteria...",minHeight:"200px"})]}),"edit"===c&&al&&(0,t.jsxs)("div",{children:[(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Created:"," ",al?.created_at?new Date(al.created_at).toLocaleString():"Unknown"]}),(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Updated:"," ",al?.updated_at?new Date(al.updated_at).toLocaleString():"Unknown"]})]})]}),(0,t.jsxs)(z.Group,{justify:"space-between",style:{position:"sticky",bottom:"-20px",left:0,right:0,padding:"16px",backgroundColor:"var(--mantine-color-body)",borderTop:"1px solid var(--mantine-color-default-border)",marginLeft:"-16px",marginRight:"-16px",marginBottom:"-16px",zIndex:10},children:[(0,t.jsx)(z.Group,{children:al&&(0,t.jsx)(H.Button,{variant:"filled",color:"red",onClick:()=>{confirm("Are you sure you want to delete this task?")&&aa.mutate({id:al.id})},leftSection:(0,t.jsx)(cL,{size:16}),children:"Delete Task"})}),(0,t.jsx)(z.Group,{justify:"flex-end",children:"edit"===c&&al?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(H.Button,{onClick:()=>{s("vibing");let a=cN(D,C,"tab","vibing");x.push(a,{scroll:!1})},leftSection:(0,t.jsx)(b7,{size:16}),variant:"gradient",gradient:{from:"blue",to:"cyan"},children:"Start Vibing"}),(0,t.jsx)(H.Button,{onClick:()=>{if("create"===c)return;let a=d||Q;if(!ab||!a)return void alert("Git operations are not available. Please check if Git service is configured.");let b=(j.title??a.title??"").trim();if(!b)return void I.notifications.show({title:"Title required",message:"Please enter a task title.",color:"red"});let e=`Update ${a.id}: ${b}`,f=`.vibeman/tasks/${a.id}.md`;ab.mutate({taskId:a.id,message:e,files:[f]})},leftSection:(0,t.jsx)(cK,{size:16}),disabled:!ab||ab.isPending||!(j.title??al?.title??"").trim(),loading:ab?.isPending,children:"Save Changes"})]}):(0,t.jsx)(H.Button,{onClick:ad,leftSection:(0,t.jsx)(cK,{size:16}),disabled:!(j.title||"").trim(),loading:$.isPending,children:"Create Task"})})]})]}),(0,t.jsx)(cI.Tabs.Panel,{value:"vibing",pt:"md",children:al&&(0,t.jsx)(vI,{task:al,disableOptions:{autoCommit:!0,createPR:!0,autoMerge:!0}})})]}),al&&(0,t.jsx)(cG.Modal,{opened:v,onClose:()=>w(!1),title:"Task History",size:"860px",styles:{body:{maxHeight:"calc(100vh - 200px)",overflowY:"auto"}},children:(0,t.jsx)(yM,{task:al,onClose:()=>w(!1)})})]})}var yR=c(47764),yS=c(50340),yT=c(48200),yU=E("outline","wand","IconWand",[["path",{d:"M6 21l15 -15l-3 -3l-15 15l3 3",key:"svg-0"}],["path",{d:"M15 6l3 3",key:"svg-1"}],["path",{d:"M9 3a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2",key:"svg-2"}],["path",{d:"M19 13a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2",key:"svg-3"}]]),yV=c(94496),yW=c.n(yV);let yX=[{value:"claude-code",label:"Claude Code"},{value:"codex",label:"Codex CLI"}],yY=[{value:"claude-sonnet-4-20250514",label:"Claude Sonnet 4"},{value:"claude-opus-4-1-20250805",label:"Claude Opus 4.1"},{value:"claude-3-5-haiku-20241022",label:"Claude 3.5 Haiku"}],yZ=[{value:"gpt-5",label:"gpt‑5"}];function y$(a){return"codex"===a?yZ:yY}let y_=[{value:"vscode",label:"Visual Studio Code"},{value:"cursor",label:"Cursor"},{value:"vim",label:"Vim"},{value:"custom",label:"Custom"}],y0=[{value:"system",label:"System Default"},{value:"iterm2",label:"iTerm2"},{value:"warp",label:"Warp"},{value:"custom",label:"Custom"}];function y1({opened:a,onClose:b}){let c=({label:a,tip:b})=>(0,t.jsxs)(z.Group,{gap:6,align:"center",children:[(0,t.jsx)(B.Text,{size:"sm",fw:500,children:a}),b&&(0,t.jsx)(b_.Tooltip,{label:b,withArrow:!0,position:"right-start",children:(0,t.jsx)(C.ActionIcon,{variant:"subtle",size:"xs","aria-label":`${a} help`,children:(0,t.jsx)(vP,{size:14})})})]}),[d,e]=(0,u.useState)(null),[f,g]=(0,u.useState)(null),[h,i]=(0,u.useState)(!1),[j,k]=(0,u.useState)([]),[l,m]=(0,u.useState)(!1),{data:n,isLoading:o}=bX.i.getSettings.useQuery(void 0,{enabled:a}),p=bX.i.listProviders.useQuery(void 0,{enabled:a}),q=bX.i.getEditorPresets.useQuery(void 0,{enabled:a}),r=bX.i.getTerminalPresets.useQuery(void 0,{enabled:a}),s=bX.i.updateSettings.useMutation({onSuccess:()=>{I.notifications.show({title:"Settings Saved",message:"Your settings have been updated successfully.",color:"green",icon:(0,t.jsx)(vl,{size:16})}),I.notifications.show({title:"Restart May Be Required",message:"Some changes apply after restarting the command.",color:"blue",icon:(0,t.jsx)(vP,{size:16})}),i(!1),k([])},onError:a=>{I.notifications.show({title:"Save Failed",message:a.message,color:"red",icon:(0,t.jsx)(ce,{size:16})})}}),v=bX.i.resetToDefaults.useMutation({onSuccess:a=>{e(a),g(a),i(!1),k([]),I.notifications.show({title:"Settings Reset",message:"Settings have been reset to defaults.",color:"blue",icon:(0,t.jsx)(b3,{size:16})})}}),w=bX.i.detectQualityChecks.useMutation({onSuccess:a=>{a?.checks?(e(b=>{if(!b)return b;let c={...b};return c.quality=c.quality||{checks:[]},c.quality.checks=a.checks,c}),i(!0),I.notifications.show({title:"Quality Checks Detected",message:`${a.checks.length} check(s) detected and staged. Review and Save to persist.`,color:"green",icon:(0,t.jsx)(vl,{size:16})})):I.notifications.show({title:"No Checks Detected",message:"AI could not determine suitable quality checks for this project.",color:"yellow",icon:(0,t.jsx)(vP,{size:16})})},onError:a=>{I.notifications.show({title:"Detection Failed",message:a?.message||"Unable to detect quality checks.",color:"red",icon:(0,t.jsx)(ce,{size:16})})}}),x=bX.i.applyEditorPreset.useMutation({onSuccess:(a,b)=>{if(a.success&&q.data){let a=q.data[b.presetName];if(a&&d){let b={...d};b.development={...b.development,editor:{...a}},e(b),I.notifications.show({title:"Editor Preset Applied",message:"Editor configuration has been updated.",color:"green",icon:(0,t.jsx)(vl,{size:16})})}}else I.notifications.show({title:"Failed to Apply Preset",message:a.errors?.[0]?.message||"Unknown error",color:"red",icon:(0,t.jsx)(ce,{size:16})})},onError:a=>{I.notifications.show({title:"Failed to Apply Preset",message:a.message,color:"red",icon:(0,t.jsx)(ce,{size:16})})}}),A=bX.i.applyTerminalPreset.useMutation({onSuccess:(a,b)=>{if(a.success&&r.data){let a=r.data[b.presetName];if(a&&d){let b={...d};b.development={...b.development,terminal:{...a}},e(b),I.notifications.show({title:"Terminal Preset Applied",message:"Terminal configuration has been updated.",color:"green",icon:(0,t.jsx)(vl,{size:16})})}}else I.notifications.show({title:"Failed to Apply Preset",message:a.errors?.[0]?.message||"Unknown error",color:"red",icon:(0,t.jsx)(ce,{size:16})})},onError:a=>{I.notifications.show({title:"Failed to Apply Preset",message:a.message,color:"red",icon:(0,t.jsx)(ce,{size:16})})}}),D=(a,b)=>{if(!d)return;let c=JSON.parse(JSON.stringify(d)),f=c;for(let b=0;b<a.length-1;b++)f=f[a[b]];f[a[a.length-1]]=b,e(c)},E=async()=>{if(d&&f){m(!0),k([]);try{let a=d.quality?.checks||[],b=[];if(a.forEach((a,c)=>{if(!a)return;let d=a.name?.trim?.()||"",e=a.command?.trim?.()||"";d||b.push({path:["quality","checks",String(c),"name"],message:"Name is required"}),e||b.push({path:["quality","checks",String(c),"command"],message:"Command is required"})}),b.length>0){k(b),I.notifications.show({title:"Fix Quality Checks",message:"Each check must include a Name and Command.",color:"red",icon:(0,t.jsx)(ce,{size:16})});return}let c=[],e=(a,b,d=[])=>{for(let f in a){let g=[...d,f];"object"!=typeof a[f]||null===a[f]||Array.isArray(a[f])?a[f]!==b[f]&&c.push({path:g,value:a[f]}):b[f]?e(a[f],b[f],g):c.push({path:g,value:a[f]})}};e(d,f);let h=JSON.stringify(d.quality?.checks||[]),i=JSON.stringify(f.quality?.checks||[]);if(h!==i){for(let a=c.length-1;a>=0;a--)2===c[a].path.length&&"quality"===c[a].path[0]&&"checks"===c[a].path[1]&&c.splice(a,1);c.push({path:["quality","checks"],value:d.quality?.checks||[]})}if(c.length>0){let a=await s.mutateAsync(c);a.success?g(d):(k(a.errors),I.notifications.show({title:"Save Failed",message:a.errors?.[0]?.message||"Validation failed. Please check inputs.",color:"red",icon:(0,t.jsx)(ce,{size:16})}))}}catch(a){console.error("Failed to save settings:",a)}finally{m(!1)}}},J=()=>{f&&(e(f),i(!1),k([]))};return o||!d?(0,t.jsx)(cG.Modal,{opened:a,onClose:b,title:"Settings",size:"lg",children:(0,t.jsx)(B.Text,{children:"Loading settings..."})}):(0,t.jsx)(cG.Modal,{opened:a,onClose:()=>{h?window.confirm("You have unsaved changes. Are you sure you want to close?")&&(J(),b()):b()},title:(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(F,{size:20}),(0,t.jsx)(B.Text,{fw:500,children:"Settings"})]}),size:"xl",closeOnClickOutside:!h,closeOnEscape:!h,children:(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsx)(ve.Alert,{icon:(0,t.jsx)(vP,{size:16}),color:"blue",title:"Restart Required",children:(0,t.jsx)(B.Text,{size:"sm",children:"Some changes (e.g., provider/model, server host/port, git defaults) apply only after you restart the command."})}),j.length>0&&(0,t.jsx)(ve.Alert,{icon:(0,t.jsx)(ce,{size:16}),color:"red",title:"Validation Errors",children:(0,t.jsx)(y.Stack,{gap:"xs",children:j.map((a,b)=>(0,t.jsxs)(B.Text,{size:"sm",children:[a.path.join("."),": ",a.message]},b))})}),(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,mb:"sm",children:"Coding Agent"}),(0,t.jsxs)(z.Group,{gap:"sm",children:[(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Provider",tip:"AI provider"}),data:yX,value:d.agents.codingAgent.provider,size:"sm",onChange:a=>{if(!a)return;let b=y$(a),c=d.agents.codingAgent.model,e=b.find(a=>a.value===c)?c:b[0]?.value;D(["agents","codingAgent"],{...d.agents.codingAgent,provider:a,model:e})}}),(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Model",tip:"AI model used for code implementation"}),data:y$(d.agents.codingAgent.provider),value:d.agents.codingAgent.model,size:"sm",onChange:a=>a&&D(["agents","codingAgent","model"],a)}),(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Max Tokens",tip:"Upper bound on output tokens. Leave blank for provider default (unlimited)."}),min:256,max:1e13,placeholder:"Unlimited (default)",value:d.agents.codingAgent.maxTokens??void 0,size:"sm",onChange:a=>D(["agents","codingAgent","maxTokens"],"number"==typeof a?a:void 0)})]})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,mb:"sm",children:"Review Agent"}),(0,t.jsxs)(z.Group,{gap:"sm",grow:!0,wrap:"wrap",children:[(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Provider",tip:"AI provider"}),data:yX,value:d.agents.judgeAgent.provider,size:"sm",onChange:a=>{if(!a)return;let b=y$(a),c=d.agents.judgeAgent.model,e=b.find(a=>a.value===c)?c:b[0]?.value;D(["agents","judgeAgent"],{...d.agents.judgeAgent,provider:a,model:e})}}),(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Model",tip:"AI model used for code review"}),data:y$(d.agents.judgeAgent.provider),value:d.agents.judgeAgent.model,size:"sm",onChange:a=>a&&D(["agents","judgeAgent","model"],a)}),(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Max Tokens",tip:"Upper bound on output tokens. Leave blank for provider default (unlimited)."}),min:256,max:1e13,placeholder:"Unlimited (default)",value:d.agents.judgeAgent.maxTokens??void 0,size:"sm",onChange:a=>D(["agents","judgeAgent","maxTokens"],"number"==typeof a?a:void 0)}),(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Threshold Score",tip:"Minimum score required to pass AI review (0-100)"}),min:0,max:100,value:d.agents.judgeAgent.reviewThresholdScore,size:"sm",onChange:a=>"number"==typeof a&&D(["agents","judgeAgent","reviewThresholdScore"],a)})]})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,mb:"sm",children:"Provider Configuration"}),(0,t.jsxs)(z.Group,{gap:"sm",grow:!0,wrap:"wrap",children:[(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Claude Code Binary Path",tip:"Path to Claude Code CLI binary. Leave blank for auto-detection."}),placeholder:"Auto-detect",value:d.agents.providers?.claudeCode?.binPath??"",size:"sm",onChange:a=>D(["agents","providers","claudeCode","binPath"],a.target.value||void 0)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Codex Binary Path",tip:"Path to Codex CLI binary. Leave blank for auto-detection."}),placeholder:"Auto-detect",value:d.agents.providers?.codex?.binPath??"",size:"sm",onChange:a=>D(["agents","providers","codex","binPath"],a.target.value||void 0)})]}),(0,t.jsx)(y.Stack,{gap:4,mt:"xs",children:p.data?.map(a=>(0,t.jsxs)(B.Text,{size:"sm",c:a.available?"teal":"red",children:[a.displayName,": ",a.available?"Available":"Not installed",!a.available&&"claude-code"===a.name&&(0,t.jsxs)(t.Fragment,{children:[" ","—"," ",(0,t.jsx)(yW(),{href:"https://docs.anthropic.com/en/docs/claude-code",target:"_blank",children:"Install Claude Code CLI"})]}),!a.available&&"codex"===a.name&&(0,t.jsxs)(t.Fragment,{children:[" ","—"," ",(0,t.jsx)(yW(),{href:"https://github.com/openai/codex",target:"_blank",children:"Install Codex CLI"})]})]},a.name))})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,mb:"sm",children:"Default Prompts"}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsx)(yS.Textarea,{label:(0,t.jsx)(c,{label:"System Prompt",tip:"Default system prompt for AI agents"}),rows:4,value:d.agents.defaultPrompts.systemPrompt,size:"sm",onChange:a=>D(["agents","defaultPrompts","systemPrompt"],a.target.value)}),(0,t.jsx)(yS.Textarea,{label:(0,t.jsx)(c,{label:"Task Prompt",tip:"Default prompt for task execution"}),rows:3,value:d.agents.defaultPrompts.taskPrompt,size:"sm",onChange:a=>D(["agents","defaultPrompts","taskPrompt"],a.target.value)})]})]})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,children:"Vibing Automation"}),(0,t.jsx)(B.Text,{size:"sm",c:"dimmed",children:"this is the default configuration, you can change it for each Vibing."}),(0,t.jsxs)(z.Group,{gap:"sm",wrap:"wrap",children:[(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"Auto Quality Checks",tip:"Automatically run quality checks after implementation"}),checked:d.defaultWorkflow.autoQualityChecks,size:"sm",onChange:a=>D(["defaultWorkflow","autoQualityChecks"],a.target.checked)}),(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"Require Human Approval",tip:"Require manual approval before merging changes"}),checked:d.defaultWorkflow.requireHumanApproval,size:"sm",onChange:a=>D(["defaultWorkflow","requireHumanApproval"],a.target.checked)}),(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"AI Code Review",tip:"Enable AI-powered code review before human review"}),checked:d.defaultWorkflow.aiCodeReview,size:"sm",onChange:a=>D(["defaultWorkflow","aiCodeReview"],a.target.checked)}),(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"Auto Commit",tip:"Automatically commit successful implementations"}),checked:d.defaultWorkflow.autoCommit,size:"sm",onChange:a=>D(["defaultWorkflow","autoCommit"],a.target.checked)})]}),(0,t.jsx)(z.Group,{gap:"sm",grow:!0,wrap:"wrap",children:(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Max Implementation Attempts",tip:"Maximum retry attempts for failed implementations"}),min:1,max:10,value:d.defaultWorkflow.maxImplementationAttempts,size:"sm",onChange:a=>"number"==typeof a&&D(["defaultWorkflow","maxImplementationAttempts"],a)})})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,children:"Quality Checks"}),(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(H.Button,{size:"xs",variant:"light",leftSection:(0,t.jsx)(yU,{size:14}),loading:w.isPending,onClick:()=>w.mutate(),children:"Detect (AI)"}),(0,t.jsx)(H.Button,{size:"xs",variant:"default",onClick:()=>{let a=JSON.parse(JSON.stringify(d));a.quality=a.quality||{checks:[]},a.quality.checks=[...a.quality.checks||[],{name:"",command:"",args:[],timeout:3e4,enabled:!0}],e(a),i(!0)},children:"Add Check"})]})]}),(0,t.jsx)(B.Text,{size:"sm",c:"dimmed",children:"Configure fast, local quality checks. Empty means validation will be skipped."}),(0,t.jsxs)(y.Stack,{gap:"xs",children:[0===(d.quality?.checks||[]).length&&(0,t.jsx)(B.Text,{size:"sm",c:"dimmed",children:"No checks configured."}),(d.quality?.checks||[]).map((a,b)=>(0,t.jsxs)(z.Group,{gap:"xs",align:"end",wrap:"wrap",children:[(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Name",tip:"Short label for this check"}),value:a.name||"",size:"sm",style:{minWidth:160},onChange:a=>{let c=JSON.parse(JSON.stringify(d));c.quality.checks[b].name=a.target.value,e(c),i(!0)}}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Command",tip:"Executable command (e.g., npm, yarn, cargo)"}),value:a.command||"",size:"sm",style:{minWidth:180},onChange:a=>{let c=JSON.parse(JSON.stringify(d));c.quality.checks[b].command=a.target.value,e(c),i(!0)}}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Args",tip:"Space-separated args (stored as array)"}),placeholder:"e.g., run lint",value:(a.args||[]).join(" "),size:"sm",style:{minWidth:220},onChange:a=>{let c=a.target.value.trim().length?a.target.value.split(/\s+/):[],f=JSON.parse(JSON.stringify(d));f.quality.checks[b].args=c,e(f),i(!0)}}),(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Timeout (ms)",tip:"1s–600000ms"}),min:1e3,max:6e5,value:a.timeout??3e4,size:"sm",onChange:a=>{if("number"!=typeof a)return;let c=JSON.parse(JSON.stringify(d));c.quality.checks[b].timeout=Math.min(6e5,Math.max(1e3,a)),e(c),i(!0)}}),(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"Enabled",tip:"Include in validation"}),checked:!1!==a.enabled,onChange:a=>{let c=JSON.parse(JSON.stringify(d));c.quality.checks[b].enabled=a.target.checked,e(c),i(!0)}}),(0,t.jsx)(H.Button,{size:"xs",color:"red",variant:"subtle",onClick:()=>{let a=JSON.parse(JSON.stringify(d));a.quality.checks.splice(b,1),e(a),i(!0)},children:"Remove"})]},`qc-${b}`))]})]}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,children:"Development Environment"}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Vibe Directory",tip:"Directory for Vibeman configuration and data. Leave blank for default (.vibeman)."}),placeholder:".vibeman (default)",value:d.development.vibeDir??"",size:"sm",onChange:a=>D(["development","vibeDir"],a.target.value||void 0)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Default Git Branch",tip:"Default branch for new features and merging"}),value:d.development.git.defaultBranch,size:"sm",onChange:a=>D(["development","git","defaultBranch"],a.target.value)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Worktree Path",tip:"Base path for Git worktrees. Leave blank for default (../)."}),placeholder:"../ (default)",value:d.development.git.worktreePath??"",size:"sm",onChange:a=>D(["development","git","worktreePath"],a.target.value||void 0)}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsx)(B.Text,{size:"md",fw:500,mb:"sm",children:"Code Editor"}),(0,t.jsxs)(z.Group,{gap:"sm",grow:!0,wrap:"wrap",children:[(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Editor Type",tip:"Select your preferred code editor"}),data:y_,value:d.development.editor?.type??"vscode",size:"sm",onChange:a=>D(["development","editor","type"],a)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Command",tip:"Executable command for the editor (e.g., 'code', 'cursor', 'vim')"}),placeholder:"Auto-detect based on type",value:d.development.editor?.command??"",size:"sm",onChange:a=>D(["development","editor","command"],a.target.value||void 0)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Display Name",tip:"Human-readable name for the editor"}),placeholder:"Auto-detect based on type",value:d.development.editor?.name??"",size:"sm",onChange:a=>D(["development","editor","name"],a.target.value||void 0)})]}),q.data&&(0,t.jsxs)(z.Group,{mt:"xs",gap:"xs",children:[(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:"Quick presets:"}),Object.entries(q.data).map(([a,b])=>(0,t.jsx)(H.Button,{size:"xs",variant:"light",onClick:()=>x.mutate({presetName:a}),loading:x.isPending,children:b?.name||a},a))]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(B.Text,{size:"md",fw:500,mb:"sm",children:"Terminal"}),(0,t.jsxs)(z.Group,{gap:"sm",grow:!0,wrap:"wrap",children:[(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Terminal Type",tip:"Select your preferred terminal"}),data:y0,value:d.development.terminal?.type??"system",size:"sm",onChange:a=>D(["development","terminal","type"],a)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Command",tip:"Executable command for the terminal"}),placeholder:"Auto-detect based on type",value:d.development.terminal?.command??"",size:"sm",onChange:a=>D(["development","terminal","command"],a.target.value||void 0)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Display Name",tip:"Human-readable name for the terminal"}),placeholder:"Auto-detect based on type",value:d.development.terminal?.name??"",size:"sm",onChange:a=>D(["development","terminal","name"],a.target.value||void 0)})]}),r.data&&(0,t.jsxs)(z.Group,{mt:"xs",gap:"xs",children:[(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:"Quick presets:"}),Object.entries(r.data).map(([a,b])=>(0,t.jsx)(H.Button,{size:"xs",variant:"light",onClick:()=>A.mutate({presetName:a}),loading:A.isPending,children:b?.name||a},a))]})]})]})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,children:"Server Configuration"}),(0,t.jsxs)(z.Group,{gap:"sm",grow:!0,wrap:"wrap",children:[(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Port",tip:"Server port (requires restart)"}),min:3e3,max:65535,value:d.server.port,size:"sm",onChange:a=>"number"==typeof a&&D(["server","port"],a)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Host",tip:"Server host address (requires restart)"}),value:d.server.host,size:"sm",onChange:a=>D(["server","host"],a.target.value)}),(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"Auto Open Browser",tip:"Automatically open browser when server starts"}),checked:d.server.autoOpenBrowser,size:"sm",onChange:a=>D(["server","autoOpenBrowser"],a.target.checked)})]})]})]}),(0,t.jsxs)(G.Box,{style:{position:"sticky",bottom:0,background:"var(--mantine-color-body)"},children:[(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)(z.Group,{justify:"space-between",style:{padding:"8px 0"},children:[(0,t.jsx)(z.Group,{children:(0,t.jsx)(H.Button,{variant:"light",color:"red",leftSection:(0,t.jsx)(b3,{size:16}),onClick:()=>{v.mutate()},loading:v.isPending,children:"Reset to Defaults"})}),(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(H.Button,{variant:"default",onClick:J,disabled:!h,children:"Cancel"}),(0,t.jsx)(H.Button,{onClick:E,loading:l,disabled:!h,leftSection:(0,t.jsx)(vl,{size:16}),children:"Save Changes"})]})]})]})]})})}var y2=c(68591),y3=c(49311),y4=E("outline","copy","IconCopy",[["path",{d:"M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z",key:"svg-0"}],["path",{d:"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1",key:"svg-1"}]]),y5=E("outline","folder","IconFolder",[["path",{d:"M5 4h4l3 3h7a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-11a2 2 0 0 1 2 -2",key:"svg-0"}]]),y6=E("outline","brand-vscode","IconBrandVscode",[["path",{d:"M16 3v18l4 -2.5v-13z",key:"svg-0"}],["path",{d:"M9.165 13.903l-4.165 3.597l-2 -1l4.333 -4.5m1.735 -1.802l6.932 -7.198v5l-4.795 4.141",key:"svg-1"}],["path",{d:"M16 16.5l-11 -10l-2 1l13 13.5",key:"svg-2"}]]),y7=E("outline","terminal-2","IconTerminal2",[["path",{d:"M8 9l3 3l-3 3",key:"svg-0"}],["path",{d:"M13 15l3 0",key:"svg-1"}],["path",{d:"M3 4m0 2a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z",key:"svg-2"}]]),y8=E("outline","list-details","IconListDetails",[["path",{d:"M13 5h8",key:"svg-0"}],["path",{d:"M13 9h5",key:"svg-1"}],["path",{d:"M13 15h8",key:"svg-2"}],["path",{d:"M13 19h5",key:"svg-3"}],["path",{d:"M3 4m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z",key:"svg-4"}],["path",{d:"M3 14m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z",key:"svg-5"}]]);function y9({opened:a,onClose:b}){let{data:c,isLoading:d}=cc(),[e,f]=(0,u.useState)(null),[g,h]=(0,u.useState)(new Set),i=(0,cb.jE)(),j=bX.i.openInEditor.useMutation(),k=bX.i.openInTerminal?.useMutation?.()||{mutateAsync:async()=>({success:!1}),isPending:!1},l=bX.i.cleanupWorktree.useMutation({onSuccess:(a,b)=>{let c=b.isConnectedToTask?b.taskId:b.worktreePath;h(a=>{let b=new Set(a);return b.delete(c),b}),I.notifications.show({title:"Success",message:"Worktree cleaned up successfully",color:"green"}),i.invalidateQueries({queryKey:[["listWorktrees"]]})},onError:(a,b)=>{let c=b.isConnectedToTask?b.taskId:b.worktreePath;h(a=>{let b=new Set(a);return b.delete(c),b}),I.notifications.show({title:"Error",message:a.message,color:"red"})}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(cG.Modal,{opened:a,onClose:b,title:(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(ca,{size:20}),(0,t.jsx)(B.Text,{fw:600,children:"Git Worktrees"})]}),size:"lg",centered:!0,children:(0,t.jsx)(y.Stack,{gap:"md",children:d?(0,t.jsxs)(z.Group,{justify:"center",p:"xl",children:[(0,t.jsx)(vL.Loader,{size:"md"}),(0,t.jsx)(B.Text,{c:"dimmed",children:"Loading worktrees..."})]}):c&&Array.isArray(c)&&0!==c.length?(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsxs)(B.Text,{size:"sm",fw:500,c:"dimmed",children:["Git Worktrees (",c?.length||0,")"]}),Array.isArray(c)&&c.map(a=>(0,t.jsx)(b$.Card,{withBorder:!0,p:"md",radius:"sm",children:(0,t.jsx)(y.Stack,{gap:"xs",children:(0,t.jsxs)(z.Group,{justify:"space-between",align:"flex-start",children:[(0,t.jsxs)("div",{style:{flex:1},children:[(0,t.jsxs)(z.Group,{gap:"xs",mb:"xs",children:[(0,t.jsx)(B.Text,{fw:600,size:"sm",children:a.taskId}),!a.isConnectedToTask&&(0,t.jsx)(bZ.Badge,{size:"xs",color:"orange",variant:"outline",children:"Unconnected"})]}),(0,t.jsxs)(z.Group,{gap:"xs",mb:"xs",children:[(0,t.jsx)(ca,{size:14}),(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:a.branchName}),(0,t.jsx)(y2.CopyButton,{value:a.branchName,children:({copied:a,copy:b})=>(0,t.jsx)(b_.Tooltip,{label:a?"Copied":"Copy branch name",withArrow:!0,position:"top",children:(0,t.jsx)(C.ActionIcon,{color:a?"teal":"gray",variant:"subtle",size:"xs",onClick:b,children:a?(0,t.jsx)(vl,{style:{width:(0,y3.D)(12)}}):(0,t.jsx)(y4,{style:{width:(0,y3.D)(12)}})})})})]}),(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(y5,{size:14}),(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",truncate:!0,children:a.path}),(0,t.jsx)(y2.CopyButton,{value:a.path,children:({copied:a,copy:b})=>(0,t.jsx)(b_.Tooltip,{label:a?"Copied":"Copy path",withArrow:!0,position:"top",children:(0,t.jsx)(C.ActionIcon,{color:a?"teal":"gray",variant:"subtle",size:"xs",onClick:b,children:a?(0,t.jsx)(vl,{style:{width:(0,y3.D)(12)}}):(0,t.jsx)(y4,{style:{width:(0,y3.D)(12)}})})})})]})]}),(0,t.jsxs)(z.Group,{gap:"xs",align:"flex-start",children:[(0,t.jsx)(b_.Tooltip,{label:"Open in VS Code",withArrow:!0,children:(0,t.jsx)(C.ActionIcon,{variant:"light",size:"sm",onClick:async()=>{try{await j.mutateAsync({worktreePath:a.path})}catch(a){console.error("Failed to open editor:",a)}},children:(0,t.jsx)(y6,{size:14})})}),(0,t.jsx)(b_.Tooltip,{label:"Open in Terminal",withArrow:!0,children:(0,t.jsx)(C.ActionIcon,{variant:"light",size:"sm",onClick:async()=>{try{await k.mutateAsync({worktreePath:a.path})}catch(a){console.error("Failed to open Terminal:",a)}},children:(0,t.jsx)(y7,{size:14})})}),a.isConnectedToTask&&(0,t.jsx)(b_.Tooltip,{label:"View Task Details",withArrow:!0,children:(0,t.jsx)(C.ActionIcon,{variant:"light",size:"sm",onClick:()=>f(a.taskId),children:(0,t.jsx)(y8,{size:14})})}),(0,t.jsx)(b_.Tooltip,{label:"Remove worktree (branch + worktree)",withArrow:!0,children:(0,t.jsx)(C.ActionIcon,{variant:"light",color:"red",size:"sm",loading:g.has(a.isConnectedToTask?a.taskId:a.path),onClick:()=>{if(confirm("Are you sure you want to remove this worktree and its branch? This cannot be undone.")){let b=a.isConnectedToTask?a.taskId:a.path;h(a=>new Set(a).add(b)),l.mutate({taskId:a.isConnectedToTask?a.taskId:void 0,worktreePath:a.path,branchName:a.branchName,isConnectedToTask:a.isConnectedToTask,force:!0})}},children:(0,t.jsx)(cL,{size:14})})})]})]})})},a.taskId))]}):(0,t.jsx)(ve.Alert,{icon:(0,t.jsx)(vP,{size:16}),title:"No worktrees found",variant:"light",color:"gray",children:(0,t.jsx)(B.Text,{size:"sm",children:"No git worktrees are currently active."})})})}),e&&(0,t.jsx)(yQ,{mode:"edit",taskId:e,opened:!!e,onClose:()=>f(null)})]})}function za(){let[a,b]=(0,u.useState)(!1),{data:c}=cc();return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(H.Button,{variant:"light",leftSection:(0,t.jsx)(ca,{size:16}),onClick:()=>b(!0),rightSection:c&&c.length>0?(0,t.jsx)(bZ.Badge,{size:"xs",variant:"filled",color:"blue",children:c.length}):null,children:"Worktrees"}),(0,t.jsx)(y9,{opened:a,onClose:()=>b(!1)})]})}function zb(){let[a,b]=(0,u.useState)(null),[c,d]=(0,u.useState)(!1),[e,f]=(0,u.useState)(),[g,h]=(0,u.useState)(!1),i=(0,cn.useRouter)(),j=(0,cn.useSearchParams)(),k=(0,cn.usePathname)()??"/";return(0,u.useMemo)(()=>j?.get("task")??null,[j]),(0,t.jsxs)(x.Container,{size:"xl",py:"xl",children:[(0,t.jsxs)(y.Stack,{gap:"lg",children:[(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(A.Title,{order:1,children:"Vibeman Dashboard"}),(0,t.jsx)(B.Text,{c:"dimmed",children:"Git-native task management with AI assistance"})]}),(0,t.jsxs)(z.Group,{gap:"sm",children:[(0,t.jsx)(za,{}),(0,t.jsx)(C.ActionIcon,{variant:"light",size:"lg",onClick:()=>h(!0),title:"Settings",children:(0,t.jsx)(F,{size:18})})]})]}),(0,t.jsx)(cF,{onTaskClick:a=>{b(a.id);let c=cN(k,j,"task",a.id);i.push(c,{scroll:!1})},onCreateTask:a=>{f(a),d(!0)}})]}),(0,t.jsx)(yQ,{mode:"edit",taskId:a,opened:!!a,onClose:()=>{b(null);let a=new URLSearchParams(j?.toString?.()||"");a.delete("task"),a.delete("tab");let c=a.toString(),d=c?`${k}?${c}`:k;i.push(d,{scroll:!1})}}),(0,t.jsx)(yQ,{mode:"create",opened:c,onClose:()=>{d(!1),f(void 0)},defaultStatus:e}),(0,t.jsx)(y1,{opened:g,onClose:()=>h(!1)})]})}function zc(){return(0,t.jsx)(u.Suspense,{fallback:null,children:(0,t.jsx)(zb,{})})}},99500:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{createMutableActionQueue:function(){return o},dispatchNavigateAction:function(){return q},dispatchTraverseAction:function(){return r},getCurrentAppRouterState:function(){return p},publicAppRouterInstance:function(){return s}});let d=c(13136),e=c(25248),f=c(31768),g=c(39370);c(68459);let h=c(46259),i=c(61725),j=c(25918),k=c(37446),l=c(37384);function m(a,b){null!==a.pending&&(a.pending=a.pending.next,null!==a.pending?n({actionQueue:a,action:a.pending,setState:b}):a.needsRefresh&&(a.needsRefresh=!1,a.dispatch({type:d.ACTION_REFRESH,origin:window.location.origin},b)))}async function n(a){let{actionQueue:b,action:c,setState:d}=a,e=b.state;b.pending=c;let f=c.payload,h=b.action(e,f);function i(a){c.discarded||(b.state=a,m(b,d),c.resolve(a))}(0,g.isThenable)(h)?h.then(i,a=>{m(b,d),c.reject(a)}):i(h)}function o(a,b){let c={state:a,dispatch:(a,b)=>(function(a,b,c){let e={resolve:c,reject:()=>{}};if(b.type!==d.ACTION_RESTORE){let a=new Promise((a,b)=>{e={resolve:a,reject:b}});(0,f.startTransition)(()=>{c(a)})}let g={payload:b,next:null,resolve:e.resolve,reject:e.reject};null===a.pending?(a.last=g,n({actionQueue:a,action:g,setState:c})):b.type===d.ACTION_NAVIGATE||b.type===d.ACTION_RESTORE?(a.pending.discarded=!0,g.next=a.pending.next,a.pending.payload.type===d.ACTION_SERVER_ACTION&&(a.needsRefresh=!0),n({actionQueue:a,action:g,setState:c})):(null!==a.last&&(a.last.next=g),a.last=g)})(c,a,b),action:async(a,b)=>(0,e.reducer)(a,b),pending:null,last:null,onRouterTransitionStart:null!==b&&"function"==typeof b.onRouterTransitionStart?b.onRouterTransitionStart:null};return c}function p(){return null}function q(a,b,c,e){let f=new URL((0,i.addBasePath)(a),location.href);(0,l.setLinkForCurrentNavigation)(e);(0,h.dispatchAppRouterAction)({type:d.ACTION_NAVIGATE,url:f,isExternalUrl:(0,j.isExternalURL)(f),locationSearch:location.search,shouldScroll:c,navigateType:b,allowAliasing:!0})}function r(a,b){(0,h.dispatchAppRouterAction)({type:d.ACTION_RESTORE,url:new URL(a),tree:b})}let s={back:()=>window.history.back(),forward:()=>window.history.forward(),prefetch:(a,b)=>{let c=function(){throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0})}(),e=(0,j.createPrefetchURL)(a);if(null!==e){var f;(0,k.prefetchReducer)(c.state,{type:d.ACTION_PREFETCH,url:e,kind:null!=(f=null==b?void 0:b.kind)?f:d.PrefetchKind.FULL})}},replace:(a,b)=>{(0,f.startTransition)(()=>{var c;q(a,"replace",null==(c=null==b?void 0:b.scroll)||c,null)})},push:(a,b)=>{(0,f.startTransition)(()=>{var c;q(a,"push",null==(c=null==b?void 0:b.scroll)||c,null)})},refresh:()=>{(0,f.startTransition)(()=>{(0,h.dispatchAppRouterAction)({type:d.ACTION_REFRESH,origin:window.location.origin})})},hmrRefresh:()=>{throw Object.defineProperty(Error("hmrRefresh can only be used in development mode. Please use refresh instead."),"__NEXT_ERROR_CODE",{value:"E485",enumerable:!1,configurable:!0})}};("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},99735:(a,b,c)=>{"use strict";var d=c(21171);a.exports={nextElementSibling:{get:function(){if(this.parentNode){for(var a=this.nextSibling;null!==a;a=a.nextSibling)if(a.nodeType===d.ELEMENT_NODE)return a}return null}},previousElementSibling:{get:function(){if(this.parentNode){for(var a=this.previousSibling;null!==a;a=a.previousSibling)if(a.nodeType===d.ELEMENT_NODE)return a}return null}}}}};var b=require("../webpack-runtime.js");b.C(a);var c=b.X(0,[635,576,458],()=>b(b.s=97289));module.exports=c})();
147
+ ${e}`)}),c.join("\n\n")},[a?.qualityResults]),z=(0,u.useCallback)(()=>{c([]),g([]),e([])},[]),A=(0,u.useCallback)(()=>{c([])},[]),B=(0,u.useCallback)(()=>{g([])},[]),C=(0,u.useCallback)(()=>{e([])},[]);return{logs:(0,u.useMemo)(()=>{let a=n.flatMap(a=>"string"==typeof a?[a]:[a.message]),c=t.flatMap(a=>"string"==typeof a?[a]:[a.message]),e=[...p,...o,...q];return{implementation:b.length?e.length?[...e,...b]:b:e.length?[...e,...a]:a,validation:f.length?f:y?y.split("\n"):["No validation logs yet."],merge:d.length?d:c}},[b,n,o,p,q,f,y,d,t]),clearLogs:z,clearImplementationLogs:A,clearValidationLogs:B,clearMergeLogs:C}}(q),v=bX.i.aiReviewCode.useMutation(),w=bX.i.listProviders.useQuery(void 0,{refetchOnWindowFocus:!1,staleTime:6e4}),x=bX.i.getRoutingPolicy.useQuery(void 0,{refetchOnWindowFocus:!1,staleTime:6e4}),[C,D]=(0,u.useState)({}),E=q?.metadata?.aiReviewResult,F=v?.data||E,G=bX.i.getWorktreeInfo.useQuery({taskId:a.id},{enabled:!!a.id,refetchOnWindowFocus:!1,staleTime:3e4}),I=G?.data,J=bX.i.resetWorkflow.useMutation(),K=bX.i.moveTask.useMutation({onSuccess:async()=>{await f.listTasks.invalidate()}}),L=bX.i.pauseWorkflow.useMutation(),M=bX.i.continueWorkflow.useMutation(),N=bX.i.startWorkflow.useMutation({onSuccess:()=>{G?.refetch()}});(0,u.useRef)(null);let O=bX.i.updateWorkflowOptions.useMutation(),P=async()=>{try{if(S||T)return;if(s(),"in-progress"!==a.status)try{await K.mutateAsync({id:a.id,status:"in-progress"})}catch(a){console.error("Failed to move task to in-progress:",a)}if(g){if(Object.keys(C||{}).length>0)try{await O.mutateAsync({workflowId:g,config:{aiRoutingOverrides:C}})}catch(a){console.error("Failed to apply routing overrides to workflow:",a)}try{await M.mutateAsync({workflowId:g})}catch(c){u9.Rm.warn("continueWorkflow failed; starting a new workflow instead:",c,"workflow-review"),e(null);let b=await N.mutateAsync?.({taskId:a.id,config:{...h.options,aiRoutingOverrides:C}});b?.workflowId&&e(b.workflowId)}}else await N.mutateAsync?.({taskId:a.id,config:{...h.options,aiRoutingOverrides:C}})}catch(a){console.error("Failed to start vibing workflow:",a)}},Q=(q?.phase==="failed"&&q?.metadata?.requireHumanApproval&&F&&q?.error?.includes("AI code review score too low")?"awaiting-review":q?.phase)||"draft",R=!!N?.isPending||!!M?.isPending,S=!!g&&["merged","completed","approved"].includes(Q),T=!!g&&["implementing","validating","ai-reviewing","awaiting-review","merging","cleaning"].includes(Q),U="paused"===Q,V=(!g||!T)&&!R,W=!g||!T,X=bX.i.rerunFromPhase.useMutation(),Y=!W||S||T||U;return(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsx)(A.Title,{order:4,children:"Vibing Parameters"}),(0,t.jsxs)(bY.Paper,{p:"xs",withBorder:!0,children:[(0,t.jsx)(z.Group,{gap:"xs",children:(0,t.jsx)(A.Title,{order:6,children:"Basic function setup"})}),(0,t.jsxs)(z.Group,{gap:"xs",align:"center",wrap:"wrap",children:[(0,t.jsx)(vg,{label:"Human Approval",tooltip:n?"Human review enabled - leaves changes uncommitted for manual review/testing (disables automation)":"Enable human review - will disable all automation options",checked:n,disabled:!V,onChange:h.setRequireHumanApproval}),(0,t.jsx)(vg,{label:"AI Review",tooltip:m?"AI code review enabled - performs extra code review and fixes":"Enable AI code review for additional quality checks",checked:m,disabled:!V,onChange:h.setAiCodeReview}),(0,t.jsx)(vg,{label:"Auto Quality Checks",tooltip:i?"Auto quality checks enabled - runs tests, linting, type checking, and builds automatically":"Enable automatic quality checks (tests, linting, type checking, builds)",checked:i,disabled:!V,onChange:h.setAutoQualityChecks}),(0,t.jsx)(vg,{label:"Auto Commit",tooltip:j?"Auto commit enabled - automatically commits changes after implementation":n?"Disabled: Human review mode keeps changes uncommitted":b?.autoCommit?"Temporarily disabled: Auto Commit functions not implemented yet":"Enable automatic commit of changes after implementation",checked:j,disabled:!V||n||!!b?.autoCommit,onChange:h.setAutoCommit}),(0,t.jsx)(vg,{label:"Create PR",tooltip:k?"Create PR enabled - will push branch and create PR (auto-enables Auto Commit)":n?"Disabled: Human review mode disables automation":l?"Disabled: Auto Merge conflicts with Create PR":b?.createPR?"Temporarily disabled: Create PR functions not implemented yet":"Enable to push branch and create PR (enables Auto Commit)",checked:k,disabled:!V||n||l||!!b?.createPR,onChange:h.setCreatePR}),(0,t.jsx)(vg,{label:"Auto Merge",tooltip:l?"Auto merge enabled - AI will auto-merge to main/dev (use with caution)":n?"Disabled: Human review mode disables automation":k?"Disabled: Create PR conflicts with Auto Merge":b?.autoMerge?"Temporarily disabled: Auto Merge functions not implemented yet":"Enable AI auto-merge to main/dev (disables Create PR) - use with caution",checked:l,disabled:!V||n||k||!!b?.autoMerge,onChange:h.setAutoMerge}),(0,t.jsx)(vg,{label:"Step-by-step",tooltip:o?"Step-by-step mode enabled – workflow waits for Continue between phases":"Enable to pause automatically between phases for testing/debugging",checked:o,disabled:!V,onChange:h.setStepByStepMode})]}),(0,t.jsx)(b0.Divider,{my:8}),(0,t.jsxs)(z.Group,{justify:"space-between",mb:"xs",children:[(0,t.jsx)(A.Title,{order:6,children:"AI & Models for each step"}),(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Defaults from .vibeman/ai-routing.json. You can override per workflow.",V?"":" (Locked while starting or running)"]})]}),(0,t.jsx)(z.Group,{gap:"xs",children:["execute_task","ai_codereview","ai_merge"].map(a=>{let b=C[a]||{},c=x.data?.operations?.[a]?.provider||x.data?.defaultProvider,d=x.data?.operations?.[a]?.model||"";return(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(bZ.Badge,{variant:"light",color:"gray",w:140,children:a}),(0,t.jsxs)(cJ.Menu,{withinPortal:!0,position:"bottom-start",shadow:"md",children:[(0,t.jsx)(cJ.Menu.Target,{children:(0,t.jsxs)(H.Button,{size:"xs",variant:"outline",disabled:!V,children:[b.provider||c||"Select provider",b.model?`:${b.model}`:d?`:${d}`:""]})}),(0,t.jsxs)(cJ.Menu.Dropdown,{children:[w.isLoading&&(0,t.jsx)(cJ.Menu.Label,{children:"Loading providers…"}),!w.isLoading&&(!w.data||0===w.data.length)&&(0,t.jsx)(cJ.Menu.Label,{children:"No providers found"}),w.data?.filter(a=>a.available).map((b,c)=>(0,t.jsxs)("div",{children:[(0,t.jsx)(cJ.Menu.Label,{children:b.displayName||b.name}),(b.models&&b.models.length>0?b.models:["default"]).map(c=>{let d="string"==typeof c?c:c.id||String(c),e="string"==typeof c?c:c.name||c.id||String(c);return(0,t.jsxs)(cJ.Menu.Item,{disabled:!V,onClick:()=>D(c=>({...c,[a]:{provider:b.name,model:d}})),children:[b.name,":",e]},`ovr-${a}-${b.name}:${d}`)}),c<(w.data?.length||1)-1&&(0,t.jsx)(b0.Divider,{my:4})]},`ovr-${a}-${b.name}-${c}`))]})]}),b.provider&&(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",color:"red",disabled:!V,onClick:()=>D(b=>{let c={...b};return delete c[a],c}),children:"Clear override"})]},a)})}),(0,t.jsx)(b0.Divider,{my:8}),(0,t.jsxs)(z.Group,{gap:"xs",align:"center",wrap:"wrap",children:[(0,t.jsx)(A.Title,{order:6,children:"Actions"}),(0,t.jsx)(H.Button,{size:"xs",leftSection:(0,t.jsx)(b7,{size:14}),onClick:P,loading:N.isPending||M.isPending,disabled:Y,variant:"gradient",gradient:{from:"blue",to:"cyan"},children:"Start Vibing"}),(0,t.jsx)(H.Button,{size:"xs",variant:"outline",color:"yellow",leftSection:(0,t.jsx)(vo,{size:14}),onClick:()=>g&&L.mutate({workflowId:g}),loading:L.isPending,disabled:!0,children:"Pause"}),U&&(0,t.jsx)(H.Button,{size:"xs",variant:"outline",color:"green",disabled:!0,leftSection:(0,t.jsx)(b7,{size:14}),onClick:()=>{if(!g)return;let a=q?.phaseHistory?.[q?.phaseHistory.length-1]?.to||q?.lastPhase||"implementing";c.e(838).then(c.bind(c,83838)).then(({modals:b})=>b.openConfirmModal({title:"Rerun current phase",centered:!0,labels:{confirm:"Rerun",cancel:"Cancel"},children:(0,t.jsx)("span",{children:"This will reset later steps and logs. Continue?"}),onConfirm:()=>X.mutate({workflowId:g,phase:a})}))},loading:X.isPending,children:"Rerun Current Phase"}),(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",color:"red",leftSection:(0,t.jsx)(b3,{size:14}),onClick:async()=>{if(g&&window.confirm("Reset this workflow? Worktree will be kept."))try{await J.mutateAsync({workflowId:g,deleteWorktree:!1,force:!0}),e(null)}catch(a){u9.Rm.error("Failed to reset workflow:",a,"workflow-review")}},loading:J.isPending,disabled:!g,children:"Reset Workflow"}),(0,t.jsx)(H.Button,{size:"xs",variant:"outline",color:"red",leftSection:(0,t.jsx)(cL,{size:14}),onClick:async()=>{if(g&&window.confirm("Reset and destroy? This will delete the worktree and its branch. This cannot be undone."))try{await J.mutateAsync({workflowId:g,deleteWorktree:!0,force:!0}),e(null)}catch(a){u9.Rm.error("Failed to reset & destroy workflow:",a,"workflow-review")}},loading:J.isPending,disabled:!g||!I?.path,children:"Reset & Destroy"})]}),l&&!n&&(0,t.jsx)(ve.Alert,{color:"orange",mt:"xs",children:(0,t.jsxs)(B.Text,{size:"xs",children:[(0,t.jsx)("strong",{children:"Warning:"})," Auto Merge will merge to the main/dev branch automatically without human approval."]})})]}),(0,t.jsx)(t.Fragment,{children:(0,t.jsxs)(bY.Paper,{children:[(0,t.jsx)(z.Group,{justify:"space-between",mb:"sm",children:(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(A.Title,{order:4,children:"Vibing Progress"}),(0,t.jsx)(bZ.Badge,{color:vm[Q],variant:"light",children:String(Q).toUpperCase()})]})}),(0,t.jsx)(vH,{workflow:q})]})})]})}var vJ=E("outline","git-pull-request","IconGitPullRequest",[["path",{d:"M6 18m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-0"}],["path",{d:"M6 6m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-1"}],["path",{d:"M18 18m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",key:"svg-2"}],["path",{d:"M6 8l0 8",key:"svg-3"}],["path",{d:"M11 6h5a2 2 0 0 1 2 2v8",key:"svg-4"}],["path",{d:"M14 9l-3 -3l3 -3",key:"svg-5"}]]);function vK({worktree:a,size:b="xs",showActions:c=!1}){let d=function(){let a=(0,cb.jE)();return bX.i.createWorktreePR.useMutation({onSuccess:()=>{a.invalidateQueries({queryKey:["worktrees"]})}})}(),e=async()=>{try{let b=await d.mutateAsync({taskId:a.taskId});b.success&&b.pullRequest?I.notifications.show({title:"PR Created",message:`Pull request created successfully: ${b.pullRequest.url}`,color:"green"}):I.notifications.show({title:"PR Creation Failed",message:b.error||"Unknown error occurred",color:"red"})}catch(a){I.notifications.show({title:"PR Creation Failed",message:a instanceof Error?a.message:"Unknown error occurred",color:"red"})}};return(0,t.jsxs)(z.Group,{gap:4,align:"center",children:[(0,t.jsx)(b_.Tooltip,{label:`Worktree: ${a.path}`,children:(0,t.jsx)(bZ.Badge,{color:"green",variant:"light",size:b,leftSection:(0,t.jsx)(ca,{size:10}),children:"active"})}),c&&(0,t.jsx)(b_.Tooltip,{label:"Create Pull Request",children:(0,t.jsx)(C.ActionIcon,{size:"sm",variant:"light",color:"blue",onClick:a=>{a.stopPropagation(),e()},loading:d.isPending,children:(0,t.jsx)(vJ,{size:12})})}),c&&(0,t.jsx)(b_.Tooltip,{label:`Branch: ${a.branchName}`,children:(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",style:{fontFamily:"monospace"},children:a.branchName})})]})}var vL=c(41547),vM=c(99019),vN=c(18861),vO=E("outline","alert-circle","IconAlertCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 8v4",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]]),vP=E("outline","info-circle","IconInfoCircle",[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 9h.01",key:"svg-1"}],["path",{d:"M11 12h1v4h1",key:"svg-2"}]]),vQ=E("outline","code-dots","IconCodeDots",[["path",{d:"M15 12h.01",key:"svg-0"}],["path",{d:"M12 12h.01",key:"svg-1"}],["path",{d:"M9 12h.01",key:"svg-2"}],["path",{d:"M6 19a2 2 0 0 1 -2 -2v-4l-1 -1l1 -1v-4a2 2 0 0 1 2 -2",key:"svg-3"}],["path",{d:"M18 19a2 2 0 0 0 2 -2v-4l1 -1l-1 -1v-4a2 2 0 0 0 -2 -2",key:"svg-4"}]]);function vR(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function vS(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?vR(Object(c),!0).forEach(function(b){vT(a,b,c[b])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):vR(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}function vT(a,b,c){var d;return(b="symbol"==typeof(d=function(a,b){if("object"!=typeof a||null===a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}(b,"string"))?d:String(d))in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function vU(a,b){if(null==a)return{};var c,d,e=function(a,b){if(null==a)return{};var c,d,e={},f=Object.keys(a);for(d=0;d<f.length;d++)c=f[d],b.indexOf(c)>=0||(e[c]=a[c]);return e}(a,b);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(a);for(d=0;d<f.length;d++)c=f[d],b.indexOf(c)>=0||Object.prototype.propertyIsEnumerable.call(a,c)&&(e[c]=a[c])}return e}function vV(a,b){return function(a){if(Array.isArray(a))return a}(a)||function(a,b){var c=null==a?null:"undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(null!=c){var d,e,f,g,h=[],i=!0,j=!1;try{if(f=(c=c.call(a)).next,0===b){if(Object(c)!==c)return;i=!1}else for(;!(i=(d=f.call(c)).done)&&(h.push(d.value),h.length!==b);i=!0);}catch(a){j=!0,e=a}finally{try{if(!i&&null!=c.return&&(g=c.return(),Object(g)!==g))return}finally{if(j)throw e}}return h}}(a,b)||vW(a,b)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function vW(a,b){if(a){if("string"==typeof a)return vX(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?vX(a,b):void 0}}function vX(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}var vY="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function vZ(a,b){return a(b={exports:{}},b.exports),b.exports}var v$=vZ(function(a){var b={}.hasOwnProperty;function c(){for(var a=[],d=0;d<arguments.length;d++){var e=arguments[d];if(e){var f=typeof e;if("string"===f||"number"===f)a.push(e);else if(Array.isArray(e)){if(e.length){var g=c.apply(null,e);g&&a.push(g)}}else if("object"===f){if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]")){a.push(e.toString());continue}for(var h in e)b.call(e,h)&&e[h]&&a.push(h)}}}return a.join(" ")}a.exports?(c.default=c,a.exports=c):window.classNames=c}),v_={hunkClassName:"",lineClassName:"",gutterClassName:"",codeClassName:"",monotonous:!1,gutterType:"default",viewType:"split",widgets:{},hideGutter:!1,selectedChanges:[],generateAnchorID:function(){},generateLineClassName:function(){},renderGutter:function(a){var b=a.renderDefault;return(0,a.wrapInAnchor)(b())},codeEvents:{},gutterEvents:{}},v0=(0,u.createContext)(v_),v1=v0.Provider,v2=vZ(function(a,b){a.exports={parse:function(a){for(var b,c,d,e,f,g=[],h=2,i=a.split("\n"),j=i.length,k=0;k<j;){var l=i[k];if(0===l.indexOf("diff --git")){b={hunks:[],oldEndingNewLine:!0,newEndingNewLine:!0,oldPath:(f=function(a){var b,c=a.slice(11),d=null,e=null;switch(c.indexOf('"')){case -1:d=(b=c.split(" "))[0].slice(2),e=b[1].slice(2);break;case 0:var f=c.indexOf('"',2);d=c.slice(3,f);var g=c.indexOf('"',f+1);e=g<0?c.slice(f+4):c.slice(g+3,-1);break;default:d=(b=c.split(" "))[0].slice(2),e=b[1].slice(3,-1)}return{oldPath:d,newPath:e}}(l)).oldPath,newPath:f.newPath},g.push(b);var m,n=null;f:for(;m=i[++k];){var o=m.indexOf(" "),p=o>-1?m.slice(0,o):p;switch(p){case"diff":k--;break f;case"deleted":case"new":var q=m.slice(o+1);0===q.indexOf("file mode")&&(b["new"===p?"newMode":"oldMode"]=q.slice(10));break;case"similarity":b.similarity=parseInt(m.split(" ")[2],10);break;case"index":var r=m.slice(o+1).split(" "),s=r[0].split("..");b.oldRevision=s[0],b.newRevision=s[1],r[1]&&(b.oldMode=b.newMode=r[1]);break;case"copy":case"rename":var t=m.slice(o+1);0===t.indexOf("from")?b.oldPath=t.slice(5):b.newPath=t.slice(3),n=p;break;case"---":var u=m.slice(o+1),v=i[++k].slice(4);"/dev/null"===u?(v=v.slice(2),n="add"):"/dev/null"===v?(u=u.slice(2),n="delete"):(n="modify",u=u.slice(2),v=v.slice(2)),u&&(b.oldPath=u),v&&(b.newPath=v),h=5;break f}}b.type=n||"modify"}else if(0===l.indexOf("Binary"))b.isBinary=!0,b.type=l.indexOf("/dev/null and")>=0?"add":l.indexOf("and /dev/null")>=0?"delete":"modify",h=2,b=null;else if(5===h)if(0===l.indexOf("@@")){var w=/^@@\s+-([0-9]+)(,([0-9]+))?\s+\+([0-9]+)(,([0-9]+))?/.exec(l);c={content:l,oldStart:w[1]-0,newStart:w[4]-0,oldLines:w[3]-0||1,newLines:w[6]-0||1,changes:[]},b.hunks.push(c),d=c.oldStart,e=c.newStart}else{var x=l.slice(0,1),y={content:l.slice(1)};switch(x){case"+":y.type="insert",y.isInsert=!0,y.lineNumber=e,e++;break;case"-":y.type="delete",y.isDelete=!0,y.lineNumber=d,d++;break;case" ":y.type="normal",y.isNormal=!0,y.oldLineNumber=d,y.newLineNumber=e,d++,e++;break;case"\\":var z=c.changes[c.changes.length-1];z.isDelete||(b.newEndingNewLine=!1),z.isInsert||(b.oldEndingNewLine=!1)}y.type&&c.changes.push(y)}k++}return g}}});function v3(a){return"insert"===a.type}function v4(a){return"delete"===a.type}function v5(a){return"normal"===a.type}function v6(a){return["".concat(a,"Start"),"".concat(a,"Lines")]}function v7(a){return"old"===a?function(a){return v3(a)?-1:v5(a)?a.oldLineNumber:a.lineNumber}:function(a){return v4(a)?-1:v5(a)?a.newLineNumber:a.lineNumber}}function v8(a,b){return function(c,d){var e=c[a],f=e+c[b];return d>=e&&d<f}}function v9(a,b){return function(c,d,e){var f=c[a]+c[b],g=d[a];return e>=f&&e<g}}function wa(a){var b,c,d=v7(a),e=(c=v8((b=vV(v6(a),2))[0],b[1]),function(a,b){return a.find(function(a){return c(a,b)})});return function(a,b){var c=e(a,b);if(c)return c.changes.find(function(a){return d(a)===b})}}function wb(a){var b="old"===a?"new":"old",c=vV(v6(a),2),d=c[0],e=c[1],f=vV(v6(b),2),g=f[0],h=f[1],i=v7(a),j=v7(b),k=v8(d,e),l=v9(d,e);return function(a,b){var c=a[0];if(b<c[d]){var f=c[d]-b;return c[g]-f}var m=a[a.length-1];if(m[d]+m[e]<=b){var n=b-m[d]-m[e];return m[g]+m[h]+n}for(var o=0;o<a.length;o++){var p=a[o],q=a[o+1];if(k(p,b)){var r=p.changes.findIndex(function(a){return i(a)===b}),s=p.changes[r];if(v5(s))return j(s);var t=v4(s)?r+1:r-1,u=p.changes[t];if(!u)return -1;var v=v3(s)?"delete":"insert";return u.type===v?j(u):-1}if(l(p,q,b)){var w=b-p[d]-p[e];return p[g]+p[h]+w}}throw Error("Unexpected line position ".concat(b))}}var wc=function(a,b){return a===b||a!=a&&b!=b},wd=function(a,b){for(var c=a.length;c--;)if(wc(a[c][0],b))return c;return -1},we=Array.prototype.splice;function wf(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}wf.prototype.clear=function(){this.__data__=[],this.size=0},wf.prototype.delete=function(a){var b=this.__data__,c=wd(b,a);return!(c<0)&&(c==b.length-1?b.pop():we.call(b,c,1),--this.size,!0)},wf.prototype.get=function(a){var b=this.__data__,c=wd(b,a);return c<0?void 0:b[c][1]},wf.prototype.has=function(a){return wd(this.__data__,a)>-1},wf.prototype.set=function(a,b){var c=this.__data__,d=wd(c,a);return d<0?(++this.size,c.push([a,b])):c[d][1]=b,this};var wg="object"==typeof vY&&vY&&vY.Object===Object&&vY,wh="object"==typeof self&&self&&self.Object===Object&&self,wi=wg||wh||Function("return this")(),wj=wi.Symbol,wk=Object.prototype,wl=wk.hasOwnProperty,wm=wk.toString,wn=wj?wj.toStringTag:void 0,wo=function(a){var b=wl.call(a,wn),c=a[wn];try{a[wn]=void 0;var d=!0}catch(a){}var e=wm.call(a);return d&&(b?a[wn]=c:delete a[wn]),e},wp=Object.prototype.toString,wq=wj?wj.toStringTag:void 0,wr=function(a){return null==a?void 0===a?"[object Undefined]":"[object Null]":wq&&wq in Object(a)?wo(a):wp.call(a)},ws=function(a){var b=typeof a;return null!=a&&("object"==b||"function"==b)},wt=function(a){if(!ws(a))return!1;var b=wr(a);return"[object Function]"==b||"[object GeneratorFunction]"==b||"[object AsyncFunction]"==b||"[object Proxy]"==b},wu=wi["__core-js_shared__"],wv=function(){var a=/[^.]+$/.exec(wu&&wu.keys&&wu.keys.IE_PROTO||"");return a?"Symbol(src)_1."+a:""}(),ww=Function.prototype.toString,wx=function(a){if(null!=a){try{return ww.call(a)}catch(a){}try{return a+""}catch(a){}}return""},wy=/^\[object .+?Constructor\]$/,wz=Object.prototype,wA=Function.prototype.toString,wB=wz.hasOwnProperty,wC=RegExp("^"+wA.call(wB).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),wD=function(a){return!(!ws(a)||wv&&wv in a)&&(wt(a)?wC:wy).test(wx(a))},wE=function(a,b){var c=null==a?void 0:a[b];return wD(c)?c:void 0},wF=wE(wi,"Map"),wG=wE(Object,"create"),wH=Object.prototype.hasOwnProperty,wI=Object.prototype.hasOwnProperty;function wJ(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}wJ.prototype.clear=function(){this.__data__=wG?wG(null):{},this.size=0},wJ.prototype.delete=function(a){var b=this.has(a)&&delete this.__data__[a];return this.size-=!!b,b},wJ.prototype.get=function(a){var b=this.__data__;if(wG){var c=b[a];return"__lodash_hash_undefined__"===c?void 0:c}return wH.call(b,a)?b[a]:void 0},wJ.prototype.has=function(a){var b=this.__data__;return wG?void 0!==b[a]:wI.call(b,a)},wJ.prototype.set=function(a,b){var c=this.__data__;return this.size+=+!this.has(a),c[a]=wG&&void 0===b?"__lodash_hash_undefined__":b,this};var wK=function(a){var b=typeof a;return"string"==b||"number"==b||"symbol"==b||"boolean"==b?"__proto__"!==a:null===a},wL=function(a,b){var c=a.__data__;return wK(b)?c["string"==typeof b?"string":"hash"]:c.map};function wM(a){var b=-1,c=null==a?0:a.length;for(this.clear();++b<c;){var d=a[b];this.set(d[0],d[1])}}function wN(a){var b=this.__data__=new wf(a);this.size=b.size}function wO(a){var b=-1,c=null==a?0:a.length;for(this.__data__=new wM;++b<c;)this.add(a[b])}wM.prototype.clear=function(){this.size=0,this.__data__={hash:new wJ,map:new(wF||wf),string:new wJ}},wM.prototype.delete=function(a){var b=wL(this,a).delete(a);return this.size-=!!b,b},wM.prototype.get=function(a){return wL(this,a).get(a)},wM.prototype.has=function(a){return wL(this,a).has(a)},wM.prototype.set=function(a,b){var c=wL(this,a),d=c.size;return c.set(a,b),this.size+=+(c.size!=d),this},wN.prototype.clear=function(){this.__data__=new wf,this.size=0},wN.prototype.delete=function(a){var b=this.__data__,c=b.delete(a);return this.size=b.size,c},wN.prototype.get=function(a){return this.__data__.get(a)},wN.prototype.has=function(a){return this.__data__.has(a)},wN.prototype.set=function(a,b){var c=this.__data__;if(c instanceof wf){var d=c.__data__;if(!wF||d.length<199)return d.push([a,b]),this.size=++c.size,this;c=this.__data__=new wM(d)}return c.set(a,b),this.size=c.size,this},wO.prototype.add=wO.prototype.push=function(a){return this.__data__.set(a,"__lodash_hash_undefined__"),this},wO.prototype.has=function(a){return this.__data__.has(a)};var wP=function(a,b){for(var c=-1,d=null==a?0:a.length;++c<d;)if(b(a[c],c,a))return!0;return!1},wQ=function(a,b,c,d,e,f){var g=1&c,h=a.length,i=b.length;if(h!=i&&!(g&&i>h))return!1;var j=f.get(a),k=f.get(b);if(j&&k)return j==b&&k==a;var l=-1,m=!0,n=2&c?new wO:void 0;for(f.set(a,b),f.set(b,a);++l<h;){var o=a[l],p=b[l];if(d)var q=g?d(p,o,l,b,a,f):d(o,p,l,a,b,f);if(void 0!==q){if(q)continue;m=!1;break}if(n){if(!wP(b,function(a,b){if(!n.has(b)&&(o===a||e(o,a,c,d,f)))return n.push(b)})){m=!1;break}}else if(o!==p&&!e(o,p,c,d,f)){m=!1;break}}return f.delete(a),f.delete(b),m},wR=wi.Uint8Array,wS=function(a){var b=-1,c=Array(a.size);return a.forEach(function(a,d){c[++b]=[d,a]}),c},wT=function(a){var b=-1,c=Array(a.size);return a.forEach(function(a){c[++b]=a}),c},wU=wj?wj.prototype:void 0,wV=wU?wU.valueOf:void 0,wW=function(a,b,c,d,e,f,g){switch(c){case"[object DataView]":if(a.byteLength!=b.byteLength||a.byteOffset!=b.byteOffset)break;a=a.buffer,b=b.buffer;case"[object ArrayBuffer]":return!(a.byteLength!=b.byteLength||!f(new wR(a),new wR(b)));case"[object Boolean]":case"[object Date]":case"[object Number]":return wc(+a,+b);case"[object Error]":return a.name==b.name&&a.message==b.message;case"[object RegExp]":case"[object String]":return a==b+"";case"[object Map]":var h=wS;case"[object Set]":var i=1&d;if(h||(h=wT),a.size!=b.size&&!i)break;var j=g.get(a);if(j)return j==b;d|=2,g.set(a,b);var k=wQ(h(a),h(b),d,e,f,g);return g.delete(a),k;case"[object Symbol]":if(wV)return wV.call(a)==wV.call(b)}return!1},wX=function(a,b){for(var c=-1,d=b.length,e=a.length;++c<d;)a[e+c]=b[c];return a},wY=Array.isArray,wZ=function(a,b,c){var d=b(a);return wY(a)?d:wX(d,c(a))},w$=function(a,b){for(var c=-1,d=null==a?0:a.length,e=0,f=[];++c<d;){var g=a[c];b(g,c,a)&&(f[e++]=g)}return f},w_=Object.prototype.propertyIsEnumerable,w0=Object.getOwnPropertySymbols,w1=w0?function(a){return null==a?[]:w$(w0(a=Object(a)),function(b){return w_.call(a,b)})}:function(){return[]},w2=function(a,b){for(var c=-1,d=Array(a);++c<a;)d[c]=b(c);return d},w3=function(a){return null!=a&&"object"==typeof a},w4=function(a){return w3(a)&&"[object Arguments]"==wr(a)},w5=Object.prototype,w6=w5.hasOwnProperty,w7=w5.propertyIsEnumerable,w8=w4(function(){return arguments}())?w4:function(a){return w3(a)&&w6.call(a,"callee")&&!w7.call(a,"callee")},w9=function(){return!1},xa=vZ(function(a,b){var c=b&&!b.nodeType&&b,d=c&&a&&!a.nodeType&&a,e=d&&d.exports===c?wi.Buffer:void 0;a.exports=(e?e.isBuffer:void 0)||w9}),xb=/^(?:0|[1-9]\d*)$/,xc=function(a,b){var c=typeof a;return!!(b=null==b?0x1fffffffffffff:b)&&("number"==c||"symbol"!=c&&xb.test(a))&&a>-1&&a%1==0&&a<b},xd=function(a){return"number"==typeof a&&a>-1&&a%1==0&&a<=0x1fffffffffffff},xe={};xe["[object Float32Array]"]=xe["[object Float64Array]"]=xe["[object Int8Array]"]=xe["[object Int16Array]"]=xe["[object Int32Array]"]=xe["[object Uint8Array]"]=xe["[object Uint8ClampedArray]"]=xe["[object Uint16Array]"]=xe["[object Uint32Array]"]=!0,xe["[object Arguments]"]=xe["[object Array]"]=xe["[object ArrayBuffer]"]=xe["[object Boolean]"]=xe["[object DataView]"]=xe["[object Date]"]=xe["[object Error]"]=xe["[object Function]"]=xe["[object Map]"]=xe["[object Number]"]=xe["[object Object]"]=xe["[object RegExp]"]=xe["[object Set]"]=xe["[object String]"]=xe["[object WeakMap]"]=!1;var xf=vZ(function(a,b){var c=b&&!b.nodeType&&b,d=c&&a&&!a.nodeType&&a,e=d&&d.exports===c&&wg.process;a.exports=function(){try{return d&&d.require&&d.require("util").types||e&&e.binding&&e.binding("util")}catch(a){}}()}),xg=xf&&xf.isTypedArray,xh=xg?function(a){return xg(a)}:function(a){return w3(a)&&xd(a.length)&&!!xe[wr(a)]},xi=Object.prototype.hasOwnProperty,xj=function(a,b){var c=wY(a),d=!c&&w8(a),e=!c&&!d&&xa(a),f=!c&&!d&&!e&&xh(a),g=c||d||e||f,h=g?w2(a.length,String):[],i=h.length;for(var j in a)!b&&!xi.call(a,j)||g&&("length"==j||e&&("offset"==j||"parent"==j)||f&&("buffer"==j||"byteLength"==j||"byteOffset"==j)||xc(j,i))||h.push(j);return h},xk=Object.prototype,xl=function(a){var b=a&&a.constructor;return a===("function"==typeof b&&b.prototype||xk)},xm=(f=Object.keys,g=Object,function(a){return f(g(a))}),xn=Object.prototype.hasOwnProperty,xo=function(a){if(!xl(a))return xm(a);var b=[];for(var c in Object(a))xn.call(a,c)&&"constructor"!=c&&b.push(c);return b},xp=function(a){return null!=a&&xd(a.length)&&!wt(a)},xq=function(a){return xp(a)?xj(a):xo(a)},xr=function(a){return wZ(a,xq,w1)},xs=Object.prototype.hasOwnProperty,xt=function(a,b,c,d,e,f){var g=1&c,h=xr(a),i=h.length;if(i!=xr(b).length&&!g)return!1;for(var j=i;j--;){var k=h[j];if(!(g?k in b:xs.call(b,k)))return!1}var l=f.get(a),m=f.get(b);if(l&&m)return l==b&&m==a;var n=!0;f.set(a,b),f.set(b,a);for(var o=g;++j<i;){var p=a[k=h[j]],q=b[k];if(d)var r=g?d(q,p,k,b,a,f):d(p,q,k,a,b,f);if(!(void 0===r?p===q||e(p,q,c,d,f):r)){n=!1;break}o||(o="constructor"==k)}if(n&&!o){var s=a.constructor,t=b.constructor;s==t||!("constructor"in a)||!("constructor"in b)||"function"==typeof s&&s instanceof s&&"function"==typeof t&&t instanceof t||(n=!1)}return f.delete(a),f.delete(b),n},xu=wE(wi,"DataView"),xv=wE(wi,"Promise"),xw=wE(wi,"Set"),xx=wE(wi,"WeakMap"),xy=wx(xu),xz=wx(wF),xA=wx(xv),xB=wx(xw),xC=wx(xx),xD=wr;(xu&&"[object DataView]"!=xD(new xu(new ArrayBuffer(1)))||wF&&"[object Map]"!=xD(new wF)||xv&&"[object Promise]"!=xD(xv.resolve())||xw&&"[object Set]"!=xD(new xw)||xx&&"[object WeakMap]"!=xD(new xx))&&(xD=function(a){var b=wr(a),c="[object Object]"==b?a.constructor:void 0,d=c?wx(c):"";if(d)switch(d){case xy:return"[object DataView]";case xz:return"[object Map]";case xA:return"[object Promise]";case xB:return"[object Set]";case xC:return"[object WeakMap]"}return b});var xE=xD,xF="[object Object]",xG=Object.prototype.hasOwnProperty,xH=function(a,b,c,d,e,f){var g=wY(a),h=wY(b),i=g?"[object Array]":xE(a),j=h?"[object Array]":xE(b),k=(i="[object Arguments]"==i?xF:i)==xF,l=(j="[object Arguments]"==j?xF:j)==xF,m=i==j;if(m&&xa(a)){if(!xa(b))return!1;g=!0,k=!1}if(m&&!k)return f||(f=new wN),g||xh(a)?wQ(a,b,c,d,e,f):wW(a,b,i,c,d,e,f);if(!(1&c)){var n=k&&xG.call(a,"__wrapped__"),o=l&&xG.call(b,"__wrapped__");if(n||o){var p=n?a.value():a,q=o?b.value():b;return f||(f=new wN),e(p,q,c,d,f)}}return!!m&&(f||(f=new wN),xt(a,b,c,d,e,f))},xI=function a(b,c,d,e,f){return b===c||(null!=b&&null!=c&&(w3(b)||w3(c))?xH(b,c,d,e,a,f):b!=b&&c!=c)},xJ=function(a,b,c,d){var e=c.length,f=e,g=!d;if(null==a)return!f;for(a=Object(a);e--;){var h=c[e];if(g&&h[2]?h[1]!==a[h[0]]:!(h[0]in a))return!1}for(;++e<f;){var i=(h=c[e])[0],j=a[i],k=h[1];if(g&&h[2]){if(void 0===j&&!(i in a))return!1}else{var l=new wN;if(d)var m=d(j,k,i,a,b,l);if(!(void 0===m?xI(k,j,3,d,l):m))return!1}}return!0},xK=function(a){return a==a&&!ws(a)},xL=function(a){for(var b=xq(a),c=b.length;c--;){var d=b[c],e=a[d];b[c]=[d,e,xK(e)]}return b},xM=function(a,b){return function(c){return null!=c&&c[a]===b&&(void 0!==b||a in Object(c))}},xN=function(a){var b=xL(a);return 1==b.length&&b[0][2]?xM(b[0][0],b[0][1]):function(c){return c===a||xJ(c,a,b)}},xO=function(a){return"symbol"==typeof a||w3(a)&&"[object Symbol]"==wr(a)},xP=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xQ=/^\w*$/,xR=function(a,b){if(wY(a))return!1;var c=typeof a;return!("number"!=c&&"symbol"!=c&&"boolean"!=c&&null!=a&&!xO(a))||xQ.test(a)||!xP.test(a)||null!=b&&a in Object(b)};function xS(a,b){if("function"!=typeof a||null!=b&&"function"!=typeof b)throw TypeError("Expected a function");var c=function(){var d=arguments,e=b?b.apply(this,d):d[0],f=c.cache;if(f.has(e))return f.get(e);var g=a.apply(this,d);return c.cache=f.set(e,g)||f,g};return c.cache=new(xS.Cache||wM),c}xS.Cache=wM;var xT=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,xU=/\\(\\)?/g,xV=function(a){var b=xS(a,function(a){return 500===c.size&&c.clear(),a}),c=b.cache;return b}(function(a){var b=[];return 46===a.charCodeAt(0)&&b.push(""),a.replace(xT,function(a,c,d,e){b.push(d?e.replace(xU,"$1"):c||a)}),b}),xW=function(a,b){for(var c=-1,d=null==a?0:a.length,e=Array(d);++c<d;)e[c]=b(a[c],c,a);return e},xX=wj?wj.prototype:void 0,xY=xX?xX.toString:void 0,xZ=function a(b){if("string"==typeof b)return b;if(wY(b))return xW(b,a)+"";if(xO(b))return xY?xY.call(b):"";var c=b+"";return"0"==c&&1/b==-1/0?"-0":c},x$=function(a,b){return wY(a)?a:xR(a,b)?[a]:xV(null==a?"":xZ(a))},x_=function(a){if("string"==typeof a||xO(a))return a;var b=a+"";return"0"==b&&1/a==-1/0?"-0":b},x0=function(a,b){for(var c=0,d=(b=x$(b,a)).length;null!=a&&c<d;)a=a[x_(b[c++])];return c&&c==d?a:void 0},x1=function(a,b,c){var d=null==a?void 0:x0(a,b);return void 0===d?c:d},x2=function(a,b){return null!=a&&b in Object(a)},x3=function(a,b,c){for(var d=-1,e=(b=x$(b,a)).length,f=!1;++d<e;){var g=x_(b[d]);if(!(f=null!=a&&c(a,g)))break;a=a[g]}return f||++d!=e?f:!!(e=null==a?0:a.length)&&xd(e)&&xc(g,e)&&(wY(a)||w8(a))},x4=function(a){return a},x5=function(a){var b;return xR(a)?(b=x_(a),function(a){return null==a?void 0:a[b]}):function(b){return x0(b,a)}},x6=function(a){var b,c;return"function"==typeof a?a:null==a?x4:"object"==typeof a?wY(a)?(b=a[0],c=a[1],xR(b)&&xK(c)?xM(x_(b),c):function(a){var d=x1(a,b);return void 0===d&&d===c?null!=a&&x3(a,b,x2):xI(c,d,3)}):xN(a):x5(a)};function x7(a){if(!a)throw Error("change is not provided");if(v5(a))return"N".concat(a.oldLineNumber);var b=v3(a)?"I":"D";return"".concat(b).concat(a.lineNumber)}v7("old"),v7("new"),wb("old"),v7("old"),v8("oldStart","oldLines"),v9("oldStart","oldLines");var x8=v7("old"),x9=v7("new"),ya=(wa("old"),wa("new"),wb("new"),wb("old"),function(){try{var a=wE(Object,"defineProperty");return a({},"",{}),a}catch(a){}}()),yb=function(a,b,c){"__proto__"==b&&ya?ya(a,b,{configurable:!0,enumerable:!0,value:c,writable:!0}):a[b]=c},yc=function(a,b,c){for(var d=-1,e=Object(a),f=c(a),g=f.length;g--;){var h=f[++d];if(!1===b(e[h],h,e))break}return a},yd=function(a,b){return a&&yc(a,b,xq)},ye=function(a,b){var c={};return b=x6(b),yd(a,function(a,d,e){yb(c,d,b(a,d,e))}),c},yf=["changeKey","text","tokens","renderToken"],yg=function a(b,c){var d=b.type,e=b.value,f=b.markType,g=b.properties,h=b.className,i=b.children,j=function(b){return(0,t.jsx)("span",{className:b,children:e||i&&i.map(a)},c)};switch(d){case"text":return e;case"mark":return j("diff-code-mark diff-code-mark-".concat(f));case"edit":return j("diff-code-edit");default:var k=g&&g.className;return j(v$(h||k))}},yh=(0,u.memo)(function(a){var b=a.changeKey,c=a.text,d=a.tokens,e=a.renderToken,f=vU(a,yf),g=e?function(a,b){return e(a,yg,b)}:yg;return(0,t.jsx)("td",vS(vS({},f),{},{"data-change-key":b,children:d?!function(a){if(!Array.isArray(a))return!0;if(a.length>1)return!1;if(1===a.length){var b=vV(a,1)[0];return"text"===b.type&&!b.value}return!0}(d)?d.map(g):" ":c||" "}))});function yi(a,b){return function(){var c="old"===b?x8(a):x9(a);return -1===c?void 0:c}}function yj(a,b){return function(c){return a&&c?(0,t.jsx)("a",{href:b?"#"+b:void 0,children:c}):c}}function yk(a,b){return b?function(c){a(),b(c)}:a}function yl(a,b,c,d){return(0,u.useMemo)(function(){var e=ye(a,function(a){return function(c){return a&&a(b,c)}});return e.onMouseEnter=yk(c,e.onMouseEnter),e.onMouseLeave=yk(d,e.onMouseLeave),e},[a,c,d,b])}function ym(a,b,c,d,e,f,g,h,i){var j={change:b,side:d,inHoverState:h,renderDefault:yi(b,d),wrapInAnchor:yj(e,f)};return(0,t.jsx)("td",vS(vS({className:a},g),{},{"data-change-key":c,children:i(j)}))}var yn=(0,u.memo)(function(a){var b,c,d,e=a.change,f=a.selected,g=a.tokens,h=a.className,i=a.generateLineClassName,j=a.gutterClassName,k=a.codeClassName,l=a.gutterEvents,m=a.codeEvents,n=a.hideGutter,o=a.gutterAnchor,p=a.generateAnchorID,q=a.renderToken,r=a.renderGutter,s=e.type,v=e.content,w=x7(e),x=(c=(b=vV((0,u.useState)(!1),2))[0],d=b[1],[c,(0,u.useCallback)(function(){return d(!0)},[]),(0,u.useCallback)(function(){return d(!1)},[])]),y=vV(x,3),z=y[0],A=y[1],B=y[2],C=(0,u.useMemo)(function(){return{change:e}},[e]),D=yl(l,C,A,B),E=yl(m,C,A,B),F=p(e),G=i({changes:[e],defaultGenerate:function(){return h}}),H=v$("diff-gutter","diff-gutter-".concat(s),j,{"diff-gutter-selected":f}),I=v$("diff-code","diff-code-".concat(s),k,{"diff-code-selected":f});return(0,t.jsxs)("tr",{id:F,className:v$("diff-line",G),children:[!n&&ym(H,e,w,"old",o,F,D,z,r),!n&&ym(H,e,w,"new",o,F,D,z,r),(0,t.jsx)(yh,vS({className:I,changeKey:w,text:v,tokens:g,renderToken:q},E))]})});function yo(a){var b=a.hideGutter,c=a.element;return(0,t.jsx)("tr",{className:"diff-widget",children:(0,t.jsx)("td",{colSpan:b?1:3,className:"diff-widget-content",children:c})})}var yp=["hideGutter","selectedChanges","tokens","lineClassName"],yq=["hunk","widgets","className"];function yr(a){var b,c=a.hunk,d=a.widgets,e=a.className,f=vU(a,yq),g=(b=c.changes,b.reduce(function(a,b){var c=x7(b);a.push(["change",c,b]);var e=d[c];return e&&a.push(["widget",c,e]),a},[]));return(0,t.jsx)("tbody",{className:v$("diff-hunk",e),children:g.map(function(a){return function(a,b){var c=vV(a,3),d=c[0],e=c[1],f=c[2],g=b.hideGutter,h=b.selectedChanges,i=b.tokens,j=b.lineClassName,k=vU(b,yp);if("change"===d){var l=v4(f)?"old":"new",m=v4(f)?x8(f):x9(f),n=i?i[l][m-1]:null;return(0,t.jsx)(yn,vS({className:j,change:f,hideGutter:g,selected:h.includes(e),tokens:n},k),"change".concat(e))}return"widget"===d?(0,t.jsx)(yo,{hideGutter:g,element:f},"widget".concat(e)):null}(a,f)})})}function ys(a,b,c,d){var e=(0,u.useCallback)(function(){return b(a)},[a,b]),f=(0,u.useCallback)(function(){return b("")},[b]);return(0,u.useMemo)(function(){var b=ye(d,function(b){return function(d){return b&&b({side:a,change:c},d)}});return b.onMouseEnter=yk(e,b.onMouseEnter),b.onMouseLeave=yk(f,b.onMouseLeave),b},[c,d,e,a,f])}function yt(a){var b=a.change,c=a.side,d=a.selected,e=a.tokens,f=a.gutterClassName,g=a.codeClassName,h=a.gutterEvents,i=a.codeEvents,j=a.anchorID,k=a.gutterAnchor,l=a.gutterAnchorTarget,m=a.hideGutter,n=a.hover,o=a.renderToken,p=a.renderGutter;if(!b){var q=v$("diff-gutter","diff-gutter-omit",f),r=v$("diff-code","diff-code-omit",g);return[!m&&(0,t.jsx)("td",{className:q},"gutter"),(0,t.jsx)("td",{className:r},"code")]}var s=b.type,u=b.content,v=x7(b),w=0===c?"old":"new",x=vS({id:j||void 0,className:v$("diff-gutter","diff-gutter-".concat(s),vT({"diff-gutter-selected":d},"diff-line-hover-"+w,n),f),children:p({change:b,side:w,inHoverState:n,renderDefault:yi(b,w),wrapInAnchor:yj(k,l)})},h),y=v$("diff-code","diff-code-".concat(s),vT({"diff-code-selected":d},"diff-line-hover-"+w,n),g);return[!m&&(0,t.jsx)("td",vS(vS({},x),{},{"data-change-key":v}),"gutter"),(0,t.jsx)(yh,vS({className:y,changeKey:v,text:u,tokens:e,renderToken:o},i),"code")]}var yu=(0,u.memo)(function(a){var b=a.className,c=a.oldChange,d=a.newChange,e=a.oldSelected,f=a.newSelected,g=a.oldTokens,h=a.newTokens,i=a.monotonous,j=a.gutterClassName,k=a.codeClassName,l=a.gutterEvents,m=a.codeEvents,n=a.hideGutter,o=a.generateAnchorID,p=a.generateLineClassName,q=a.gutterAnchor,r=a.renderToken,s=a.renderGutter,v=vV((0,u.useState)(""),2),w=v[0],x=v[1],y=ys("old",x,c,l),z=ys("new",x,d,l),A=ys("old",x,c,m),B=ys("new",x,d,m),C=c&&o(c),D=d&&o(d),E=p({changes:[c,d],defaultGenerate:function(){return b}}),F={monotonous:i,hideGutter:n,gutterClassName:j,codeClassName:k,gutterEvents:l,codeEvents:m,renderToken:r,renderGutter:s},G=vS(vS({},F),{},{change:c,side:0,selected:e,tokens:g,gutterEvents:y,codeEvents:A,anchorID:C,gutterAnchor:q,gutterAnchorTarget:C,hover:"old"===w}),H=vS(vS({},F),{},{change:d,side:1,selected:f,tokens:h,gutterEvents:z,codeEvents:B,anchorID:c===d?null:D,gutterAnchor:q,gutterAnchorTarget:c===d?C:D,hover:"new"===w});if(i)return(0,t.jsx)("tr",{className:v$("diff-line",E),children:yt(c?G:H)});var I=c&&!d?"diff-line-old-only":!c&&d?"diff-line-new-only":c===d?"diff-line-normal":"diff-line-compare";return(0,t.jsxs)("tr",{className:v$("diff-line",I,E),children:[yt(G),yt(H)]})});function yv(a){var b=a.hideGutter,c=a.oldElement,d=a.newElement;return a.monotonous?(0,t.jsx)("tr",{className:"diff-widget",children:(0,t.jsx)("td",{colSpan:b?1:2,className:"diff-widget-content",children:c||d})}):c===d?(0,t.jsx)("tr",{className:"diff-widget",children:(0,t.jsx)("td",{colSpan:b?2:4,className:"diff-widget-content",children:c})}):(0,t.jsxs)("tr",{className:"diff-widget",children:[(0,t.jsx)("td",{colSpan:b?1:2,className:"diff-widget-content",children:c}),(0,t.jsx)("td",{colSpan:b?1:2,className:"diff-widget-content",children:d})]})}var yw=["selectedChanges","monotonous","hideGutter","tokens","lineClassName"],yx=["hunk","widgets","className"];function yy(a,b){return(a?x7(a):"00")+(b?x7(b):"00")}function yz(a){var b=a.hunk,c=a.widgets,d=a.className,e=vU(a,yx),f=function(a,b){for(var c=function(a){return a&&b[x7(a)]||null},d=[],e=0;e<a.length;e++){var f=a[e];if(v5(f))d.push(["change",yy(f,f),f,f]);else if(v4(f)){var g=a[e+1];g&&v3(g)?(e+=1,d.push(["change",yy(f,g),f,g])):d.push(["change",yy(f,null),f,null])}else d.push(["change",yy(null,f),null,f]);var h=d[d.length-1],i=c(h[2]),j=c(h[3]);if(i||j){var k=h[1];d.push(["widget",k,i,j])}}return d}(b.changes,c);return(0,t.jsx)("tbody",{className:v$("diff-hunk",d),children:f.map(function(a){return function(a,b){var c=vV(a,4),d=c[0],e=c[1],f=c[2],g=c[3],h=b.selectedChanges,i=b.monotonous,j=b.hideGutter,k=b.tokens,l=b.lineClassName,m=vU(b,yw);if("change"===d){var n=!!f&&h.includes(x7(f)),o=!!g&&h.includes(x7(g)),p=f&&k?k.old[x8(f)-1]:null,q=g&&k?k.new[x9(g)-1]:null;return(0,t.jsx)(yu,vS({className:l,oldChange:f,newChange:g,monotonous:i,hideGutter:j,oldSelected:n,newSelected:o,oldTokens:p,newTokens:q},m),"change".concat(e))}return"widget"===d?(0,t.jsx)(yv,{monotonous:i,hideGutter:j,oldElement:f,newElement:g},"widget".concat(e)):null}(a,e)})})}var yA=["gutterType","hunkClassName"];function yB(a){var b=a.hunk,c=(0,u.useContext)(v0),d=c.gutterType,e=c.hunkClassName,f=vU(c,yA),g="unified"===f.viewType?yr:yz;return(0,t.jsx)(g,vS(vS({},f),{},{hunk:b,hideGutter:"none"===d,gutterAnchor:"anchor"===d,className:e}))}function yC(){}function yD(a,b){var c=b?"auto":"none";a instanceof HTMLElement&&a.style.userSelect!==c&&(a.style.userSelect=c)}var yE=(0,u.memo)(function(a){var b=a.diffType,c=a.hunks,d=a.optimizeSelection,e=a.className,f=a.hunkClassName,g=void 0===f?v_.hunkClassName:f,h=a.lineClassName,i=void 0===h?v_.lineClassName:h,j=a.generateLineClassName,k=void 0===j?v_.generateLineClassName:j,l=a.gutterClassName,m=void 0===l?v_.gutterClassName:l,n=a.codeClassName,o=void 0===n?v_.codeClassName:n,p=a.gutterType,q=void 0===p?v_.gutterType:p,r=a.viewType,s=void 0===r?v_.viewType:r,v=a.gutterEvents,w=void 0===v?v_.gutterEvents:v,x=a.codeEvents,y=void 0===x?v_.codeEvents:x,z=a.generateAnchorID,A=void 0===z?v_.generateAnchorID:z,B=a.selectedChanges,C=void 0===B?v_.selectedChanges:B,D=a.widgets,E=void 0===D?v_.widgets:D,F=a.renderGutter,G=void 0===F?v_.renderGutter:F,H=a.tokens,I=a.renderToken,J=a.children,K=(0,u.useRef)(null),L=(0,u.useCallback)(function(a){var b=a.target;if(0===a.button){var c=function(a,b){for(var c=a;c&&c!==document.documentElement&&!c.classList.contains(b);)c=c.parentElement;return c===document.documentElement?null:c}(b,"diff-code");if(c&&c.parentElement){var d=window.getSelection();d&&d.removeAllRanges();var e=((function(a){if(Array.isArray(a))return vX(a)})(f=c.parentElement.children)||function(a){if("undefined"!=typeof Symbol&&null!=a[Symbol.iterator]||null!=a["@@iterator"])return Array.from(a)}(f)||vW(f)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).indexOf(c);if(1===e||3===e){var f,g,h=function(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=vW(a))){c&&(a=c);var d=0,e=function(){};return{s:e,n:function(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function(a){throw a},f:e}}throw TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function(){c=c.call(a)},n:function(){var a=c.next();return g=a.done,a},e:function(a){h=!0,f=a},f:function(){try{g||null==c.return||c.return()}finally{if(h)throw f}}}}(K.current?K.current.querySelectorAll(".diff-line"):[]);try{for(h.s();!(g=h.n()).done;){var i=g.value.children;yD(i[1],1===e),yD(i[3],3===e)}}catch(a){h.e(a)}finally{h.f()}}}}},[]),M="none"===q,N="add"===b||"delete"===b,O="split"===s&&!N&&d?L:yC,P=(0,u.useMemo)(function(){return(0,t.jsxs)("colgroup","unified"===s?{children:[!M&&(0,t.jsx)("col",{className:"diff-gutter-col"}),!M&&(0,t.jsx)("col",{className:"diff-gutter-col"}),(0,t.jsx)("col",{})]}:N?{children:[!M&&(0,t.jsx)("col",{className:"diff-gutter-col"}),(0,t.jsx)("col",{})]}:{children:[!M&&(0,t.jsx)("col",{className:"diff-gutter-col"}),(0,t.jsx)("col",{}),!M&&(0,t.jsx)("col",{className:"diff-gutter-col"}),(0,t.jsx)("col",{})]})},[s,N,M]),Q=(0,u.useMemo)(function(){return{hunkClassName:g,lineClassName:i,generateLineClassName:k,gutterClassName:m,codeClassName:o,monotonous:N,hideGutter:M,viewType:s,gutterType:q,codeEvents:y,gutterEvents:w,generateAnchorID:A,selectedChanges:C,widgets:E,renderGutter:G,tokens:H,renderToken:I}},[o,y,A,m,w,q,M,g,i,k,N,G,I,C,H,s,E]);return(0,t.jsx)(v1,{value:Q,children:(0,t.jsxs)("table",{ref:K,className:v$("diff","diff-".concat(s),e),onMouseDown:O,children:[P,(void 0===J?function(a){return a.map(function(a){return(0,t.jsx)(yB,{hunk:a},"-".concat(a.oldStart,",").concat(a.oldLines," +").concat(a.newStart,",").concat(a.newLines))})}:J)(c)]})})}),yF=function(a,b,c,d){for(var e=-1,f=null==a?0:a.length;++e<f;){var g=a[e];b(d,g,c(g),a)}return d},yG=(e=yd,function(a,b){if(null==a)return a;if(!xp(a))return e(a,b);for(var c=a.length,d=-1,f=Object(a);++d<c&&!1!==b(f[d],d,f););return a}),yH=function(a,b,c,d){return yG(a,function(a,e,f){b(d,a,c(a),f)}),d},yI=function(a,b){return function(c,d){var e=wY(c)?yF:yH,f=b?b():{};return e(c,a,x6(d),f)}};yI(function(a,b,c){yb(a,c,b)}),wj&&wj.isConcatSpreadable;var yJ=Object.prototype.hasOwnProperty;yI(function(a,b,c){yJ.call(a,c)?a[c].push(b):yb(a,c,[b])}),Object.prototype.hasOwnProperty;var yK=vZ(function(a){var b=function(){this.Diff_Timeout=1,this.Diff_EditCost=4,this.Match_Threshold=.5,this.Match_Distance=1e3,this.Patch_DeleteThreshold=.5,this.Patch_Margin=4,this.Match_MaxBits=32};b.Diff=function(a,b){return[a,b]},b.prototype.diff_main=function(a,c,d,e){void 0===e&&(e=this.Diff_Timeout<=0?Number.MAX_VALUE:(new Date).getTime()+1e3*this.Diff_Timeout);var f=e;if(null==a||null==c)throw Error("Null input. (diff_main)");if(a==c)return a?[new b.Diff(0,a)]:[];void 0===d&&(d=!0);var g=d,h=this.diff_commonPrefix(a,c),i=a.substring(0,h);a=a.substring(h),c=c.substring(h),h=this.diff_commonSuffix(a,c);var j=a.substring(a.length-h);a=a.substring(0,a.length-h),c=c.substring(0,c.length-h);var k=this.diff_compute_(a,c,g,f);return i&&k.unshift(new b.Diff(0,i)),j&&k.push(new b.Diff(0,j)),this.diff_cleanupMerge(k),k},b.prototype.diff_compute_=function(a,c,d,e){if(!a)return[new b.Diff(1,c)];if(!c)return[new b.Diff(-1,a)];var f,g=a.length>c.length?a:c,h=a.length>c.length?c:a,i=g.indexOf(h);if(-1!=i)return f=[new b.Diff(1,g.substring(0,i)),new b.Diff(0,h),new b.Diff(1,g.substring(i+h.length))],a.length>c.length&&(f[0][0]=f[2][0]=-1),f;if(1==h.length)return[new b.Diff(-1,a),new b.Diff(1,c)];var j=this.diff_halfMatch_(a,c);if(j){var k=j[0],l=j[1],m=j[2],n=j[3],o=j[4],p=this.diff_main(k,m,d,e),q=this.diff_main(l,n,d,e);return p.concat([new b.Diff(0,o)],q)}return d&&a.length>100&&c.length>100?this.diff_lineMode_(a,c,e):this.diff_bisect_(a,c,e)},b.prototype.diff_lineMode_=function(a,c,d){var e=this.diff_linesToChars_(a,c);a=e.chars1,c=e.chars2;var f=e.lineArray,g=this.diff_main(a,c,!1,d);this.diff_charsToLines_(g,f),this.diff_cleanupSemantic(g),g.push(new b.Diff(0,""));for(var h=0,i=0,j=0,k="",l="";h<g.length;){switch(g[h][0]){case 1:j++,l+=g[h][1];break;case -1:i++,k+=g[h][1];break;case 0:if(i>=1&&j>=1){g.splice(h-i-j,i+j),h=h-i-j;for(var m=this.diff_main(k,l,!1,d),n=m.length-1;n>=0;n--)g.splice(h,0,m[n]);h+=m.length}j=0,i=0,k="",l=""}h++}return g.pop(),g},b.prototype.diff_bisect_=function(a,c,d){for(var e=a.length,f=c.length,g=Math.ceil((e+f)/2),h=2*g,i=Array(h),j=Array(h),k=0;k<h;k++)i[k]=-1,j[k]=-1;i[g+1]=0,j[g+1]=0;for(var l=e-f,m=l%2!=0,n=0,o=0,p=0,q=0,r=0;r<g&&!((new Date).getTime()>d);r++){for(var s=-r+n;s<=r-o;s+=2){for(var t=g+s,u=(w=s==-r||s!=r&&i[t-1]<i[t+1]?i[t+1]:i[t-1]+1)-s;w<e&&u<f&&a.charAt(w)==c.charAt(u);)w++,u++;if(i[t]=w,w>e)o+=2;else if(u>f)n+=2;else if(m&&(y=g+l-s)>=0&&y<h&&-1!=j[y]&&w>=(x=e-j[y]))return this.diff_bisectSplit_(a,c,w,u,d)}for(var v=-r+p;v<=r-q;v+=2){for(var w,x,y=g+v,z=(x=v==-r||v!=r&&j[y-1]<j[y+1]?j[y+1]:j[y-1]+1)-v;x<e&&z<f&&a.charAt(e-x-1)==c.charAt(f-z-1);)x++,z++;if(j[y]=x,x>e)q+=2;else if(z>f)p+=2;else if(!m&&(t=g+l-v)>=0&&t<h&&-1!=i[t]&&(u=g+(w=i[t])-t,w>=(x=e-x)))return this.diff_bisectSplit_(a,c,w,u,d)}}return[new b.Diff(-1,a),new b.Diff(1,c)]},b.prototype.diff_bisectSplit_=function(a,b,c,d,e){var f=a.substring(0,c),g=b.substring(0,d),h=a.substring(c),i=b.substring(d),j=this.diff_main(f,g,!1,e),k=this.diff_main(h,i,!1,e);return j.concat(k)},b.prototype.diff_linesToChars_=function(a,b){var c=[],d={};function e(a){for(var b="",e=0,g=-1,h=c.length;g<a.length-1;){-1==(g=a.indexOf("\n",e))&&(g=a.length-1);var i=a.substring(e,g+1);(d.hasOwnProperty?d.hasOwnProperty(i):void 0!==d[i])?b+=String.fromCharCode(d[i]):(h==f&&(i=a.substring(e),g=a.length),b+=String.fromCharCode(h),d[i]=h,c[h++]=i),e=g+1}return b}c[0]="";var f=4e4,g=e(a);return f=65535,{chars1:g,chars2:e(b),lineArray:c}},b.prototype.diff_charsToLines_=function(a,b){for(var c=0;c<a.length;c++){for(var d=a[c][1],e=[],f=0;f<d.length;f++)e[f]=b[d.charCodeAt(f)];a[c][1]=e.join("")}},b.prototype.diff_commonPrefix=function(a,b){if(!a||!b||a.charAt(0)!=b.charAt(0))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(f,e)==b.substring(f,e)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e},b.prototype.diff_commonSuffix=function(a,b){if(!a||!b||a.charAt(a.length-1)!=b.charAt(b.length-1))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(a.length-e,a.length-f)==b.substring(b.length-e,b.length-f)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e},b.prototype.diff_commonOverlap_=function(a,b){var c=a.length,d=b.length;if(0==c||0==d)return 0;c>d?a=a.substring(c-d):c<d&&(b=b.substring(0,c));var e=Math.min(c,d);if(a==b)return e;for(var f=0,g=1;;){var h=a.substring(e-g),i=b.indexOf(h);if(-1==i)return f;g+=i,0!=i&&a.substring(e-g)!=b.substring(0,g)||(f=g,g++)}},b.prototype.diff_halfMatch_=function(a,b){if(this.Diff_Timeout<=0)return null;var c=a.length>b.length?a:b,d=a.length>b.length?b:a;if(c.length<4||2*d.length<c.length)return null;var e=this;function f(a,b,c){for(var d,f,g,h,i=a.substring(c,c+Math.floor(a.length/4)),j=-1,k="";-1!=(j=b.indexOf(i,j+1));){var l=e.diff_commonPrefix(a.substring(c),b.substring(j)),m=e.diff_commonSuffix(a.substring(0,c),b.substring(0,j));k.length<m+l&&(k=b.substring(j-m,j)+b.substring(j,j+l),d=a.substring(0,c-m),f=a.substring(c+l),g=b.substring(0,j-m),h=b.substring(j+l))}return 2*k.length>=a.length?[d,f,g,h,k]:null}var g,h,i,j,k,l=f(c,d,Math.ceil(c.length/4)),m=f(c,d,Math.ceil(c.length/2));return l||m?(g=m?l&&l[4].length>m[4].length?l:m:l,a.length>b.length?(h=g[0],i=g[1],j=g[2],k=g[3]):(j=g[0],k=g[1],h=g[2],i=g[3]),[h,i,j,k,g[4]]):null},b.prototype.diff_cleanupSemantic=function(a){for(var c=!1,d=[],e=0,f=null,g=0,h=0,i=0,j=0,k=0;g<a.length;)0==a[g][0]?(d[e++]=g,h=j,i=k,j=0,k=0,f=a[g][1]):(1==a[g][0]?j+=a[g][1].length:k+=a[g][1].length,f&&f.length<=Math.max(h,i)&&f.length<=Math.max(j,k)&&(a.splice(d[e-1],0,new b.Diff(-1,f)),a[d[e-1]+1][0]=1,e--,g=--e>0?d[e-1]:-1,h=0,i=0,j=0,k=0,f=null,c=!0)),g++;for(c&&this.diff_cleanupMerge(a),this.diff_cleanupSemanticLossless(a),g=1;g<a.length;){if(-1==a[g-1][0]&&1==a[g][0]){var l=a[g-1][1],m=a[g][1],n=this.diff_commonOverlap_(l,m),o=this.diff_commonOverlap_(m,l);n>=o?(n>=l.length/2||n>=m.length/2)&&(a.splice(g,0,new b.Diff(0,m.substring(0,n))),a[g-1][1]=l.substring(0,l.length-n),a[g+1][1]=m.substring(n),g++):(o>=l.length/2||o>=m.length/2)&&(a.splice(g,0,new b.Diff(0,l.substring(0,o))),a[g-1][0]=1,a[g-1][1]=m.substring(0,m.length-o),a[g+1][0]=-1,a[g+1][1]=l.substring(o),g++),g++}g++}},b.prototype.diff_cleanupSemanticLossless=function(a){function c(a,c){if(!a||!c)return 6;var d=a.charAt(a.length-1),e=c.charAt(0),f=d.match(b.nonAlphaNumericRegex_),g=e.match(b.nonAlphaNumericRegex_),h=f&&d.match(b.whitespaceRegex_),i=g&&e.match(b.whitespaceRegex_),j=h&&d.match(b.linebreakRegex_),k=i&&e.match(b.linebreakRegex_),l=j&&a.match(b.blanklineEndRegex_),m=k&&c.match(b.blanklineStartRegex_);return l||m?5:j||k?4:f&&!h&&i?3:h||i?2:f||g?1:0}for(var d=1;d<a.length-1;){if(0==a[d-1][0]&&0==a[d+1][0]){var e=a[d-1][1],f=a[d][1],g=a[d+1][1],h=this.diff_commonSuffix(e,f);if(h){var i=f.substring(f.length-h);e=e.substring(0,e.length-h),f=i+f.substring(0,f.length-h),g=i+g}for(var j=e,k=f,l=g,m=c(e,f)+c(f,g);f.charAt(0)===g.charAt(0);){e+=f.charAt(0),f=f.substring(1)+g.charAt(0),g=g.substring(1);var n=c(e,f)+c(f,g);n>=m&&(m=n,j=e,k=f,l=g)}a[d-1][1]!=j&&(j?a[d-1][1]=j:(a.splice(d-1,1),d--),a[d][1]=k,l?a[d+1][1]=l:(a.splice(d+1,1),d--))}d++}},b.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/,b.whitespaceRegex_=/\s/,b.linebreakRegex_=/[\r\n]/,b.blanklineEndRegex_=/\n\r?\n$/,b.blanklineStartRegex_=/^\r?\n\r?\n/,b.prototype.diff_cleanupEfficiency=function(a){for(var c=!1,d=[],e=0,f=null,g=0,h=!1,i=!1,j=!1,k=!1;g<a.length;)0==a[g][0]?(a[g][1].length<this.Diff_EditCost&&(j||k)?(d[e++]=g,h=j,i=k,f=a[g][1]):(e=0,f=null),j=k=!1):(-1==a[g][0]?k=!0:j=!0,f&&(h&&i&&j&&k||f.length<this.Diff_EditCost/2&&h+i+j+k==3)&&(a.splice(d[e-1],0,new b.Diff(-1,f)),a[d[e-1]+1][0]=1,e--,f=null,h&&i?(j=k=!0,e=0):(g=--e>0?d[e-1]:-1,j=k=!1),c=!0)),g++;c&&this.diff_cleanupMerge(a)},b.prototype.diff_cleanupMerge=function(a){a.push(new b.Diff(0,""));for(var c,d=0,e=0,f=0,g="",h="";d<a.length;)switch(a[d][0]){case 1:f++,h+=a[d][1],d++;break;case -1:e++,g+=a[d][1],d++;break;case 0:e+f>1?(0!==e&&0!==f&&(0!==(c=this.diff_commonPrefix(h,g))&&(d-e-f>0&&0==a[d-e-f-1][0]?a[d-e-f-1][1]+=h.substring(0,c):(a.splice(0,0,new b.Diff(0,h.substring(0,c))),d++),h=h.substring(c),g=g.substring(c)),0!==(c=this.diff_commonSuffix(h,g))&&(a[d][1]=h.substring(h.length-c)+a[d][1],h=h.substring(0,h.length-c),g=g.substring(0,g.length-c))),d-=e+f,a.splice(d,e+f),g.length&&(a.splice(d,0,new b.Diff(-1,g)),d++),h.length&&(a.splice(d,0,new b.Diff(1,h)),d++),d++):0!==d&&0==a[d-1][0]?(a[d-1][1]+=a[d][1],a.splice(d,1)):d++,f=0,e=0,g="",h=""}""===a[a.length-1][1]&&a.pop();var i=!1;for(d=1;d<a.length-1;)0==a[d-1][0]&&0==a[d+1][0]&&(a[d][1].substring(a[d][1].length-a[d-1][1].length)==a[d-1][1]?(a[d][1]=a[d-1][1]+a[d][1].substring(0,a[d][1].length-a[d-1][1].length),a[d+1][1]=a[d-1][1]+a[d+1][1],a.splice(d-1,1),i=!0):a[d][1].substring(0,a[d+1][1].length)==a[d+1][1]&&(a[d-1][1]+=a[d+1][1],a[d][1]=a[d][1].substring(a[d+1][1].length)+a[d+1][1],a.splice(d+1,1),i=!0)),d++;i&&this.diff_cleanupMerge(a)},b.prototype.diff_xIndex=function(a,b){var c,d=0,e=0,f=0,g=0;for(c=0;c<a.length&&(1!==a[c][0]&&(d+=a[c][1].length),-1!==a[c][0]&&(e+=a[c][1].length),!(d>b));c++)f=d,g=e;return a.length!=c&&-1===a[c][0]?g:g+(b-f)},b.prototype.diff_prettyHtml=function(a){for(var b=[],c=/&/g,d=/</g,e=/>/g,f=/\n/g,g=0;g<a.length;g++){var h=a[g][0],i=a[g][1].replace(c,"&amp;").replace(d,"&lt;").replace(e,"&gt;").replace(f,"&para;<br>");switch(h){case 1:b[g]='<ins style="background:#e6ffe6;">'+i+"</ins>";break;case -1:b[g]='<del style="background:#ffe6e6;">'+i+"</del>";break;case 0:b[g]="<span>"+i+"</span>"}}return b.join("")},b.prototype.diff_text1=function(a){for(var b=[],c=0;c<a.length;c++)1!==a[c][0]&&(b[c]=a[c][1]);return b.join("")},b.prototype.diff_text2=function(a){for(var b=[],c=0;c<a.length;c++)-1!==a[c][0]&&(b[c]=a[c][1]);return b.join("")},b.prototype.diff_levenshtein=function(a){for(var b=0,c=0,d=0,e=0;e<a.length;e++){var f=a[e][0],g=a[e][1];switch(f){case 1:c+=g.length;break;case -1:d+=g.length;break;case 0:b+=Math.max(c,d),c=0,d=0}}return b+Math.max(c,d)},b.prototype.diff_toDelta=function(a){for(var b=[],c=0;c<a.length;c++)switch(a[c][0]){case 1:b[c]="+"+encodeURI(a[c][1]);break;case -1:b[c]="-"+a[c][1].length;break;case 0:b[c]="="+a[c][1].length}return b.join(" ").replace(/%20/g," ")},b.prototype.diff_fromDelta=function(a,c){for(var d=[],e=0,f=0,g=c.split(/\t/g),h=0;h<g.length;h++){var i=g[h].substring(1);switch(g[h].charAt(0)){case"+":try{d[e++]=new b.Diff(1,decodeURI(i))}catch(a){throw Error("Illegal escape in diff_fromDelta: "+i)}break;case"-":case"=":var j=parseInt(i,10);if(isNaN(j)||j<0)throw Error("Invalid number in diff_fromDelta: "+i);var k=a.substring(f,f+=j);"="==g[h].charAt(0)?d[e++]=new b.Diff(0,k):d[e++]=new b.Diff(-1,k);break;default:if(g[h])throw Error("Invalid diff operation in diff_fromDelta: "+g[h])}}if(f!=a.length)throw Error("Delta length ("+f+") does not equal source text length ("+a.length+").");return d},b.prototype.match_main=function(a,b,c){if(null==a||null==b||null==c)throw Error("Null input. (match_main)");return c=Math.max(0,Math.min(c,a.length)),a==b?0:a.length?a.substring(c,c+b.length)==b?c:this.match_bitap_(a,b,c):-1},b.prototype.match_bitap_=function(a,b,c){if(b.length>this.Match_MaxBits)throw Error("Pattern too long for this browser.");var d=this.match_alphabet_(b),e=this;function f(a,d){var f=a/b.length,g=Math.abs(c-d);return e.Match_Distance?f+g/e.Match_Distance:g?1:f}var g=this.Match_Threshold,h=a.indexOf(b,c);-1!=h&&(g=Math.min(f(0,h),g),-1!=(h=a.lastIndexOf(b,c+b.length))&&(g=Math.min(f(0,h),g)));var i,j,k=1<<b.length-1;h=-1;for(var l,m=b.length+a.length,n=0;n<b.length;n++){for(i=0,j=m;i<j;)f(n,c+j)<=g?i=j:m=j,j=Math.floor((m-i)/2+i);m=j;var o=Math.max(1,c-j+1),p=Math.min(c+j,a.length)+b.length,q=Array(p+2);q[p+1]=(1<<n)-1;for(var r=p;r>=o;r--){var s=d[a.charAt(r-1)];if(q[r]=0===n?(q[r+1]<<1|1)&s:(q[r+1]<<1|1)&s|(l[r+1]|l[r])<<1|1|l[r+1],q[r]&k){var t=f(n,r-1);if(t<=g){if(g=t,!((h=r-1)>c))break;o=Math.max(1,2*c-h)}}}if(f(n+1,c)>g)break;l=q}return h},b.prototype.match_alphabet_=function(a){for(var b={},c=0;c<a.length;c++)b[a.charAt(c)]=0;for(c=0;c<a.length;c++)b[a.charAt(c)]|=1<<a.length-c-1;return b},b.prototype.patch_addContext_=function(a,c){if(0!=c.length){if(null===a.start2)throw Error("patch not initialized");for(var d=c.substring(a.start2,a.start2+a.length1),e=0;c.indexOf(d)!=c.lastIndexOf(d)&&d.length<this.Match_MaxBits-this.Patch_Margin-this.Patch_Margin;)e+=this.Patch_Margin,d=c.substring(a.start2-e,a.start2+a.length1+e);e+=this.Patch_Margin;var f=c.substring(a.start2-e,a.start2);f&&a.diffs.unshift(new b.Diff(0,f));var g=c.substring(a.start2+a.length1,a.start2+a.length1+e);g&&a.diffs.push(new b.Diff(0,g)),a.start1-=f.length,a.start2-=f.length,a.length1+=f.length+g.length,a.length2+=f.length+g.length}},b.prototype.patch_make=function(a,c,d){var e,f;if("string"==typeof a&&"string"==typeof c&&void 0===d)e=a,(f=this.diff_main(e,c,!0)).length>2&&(this.diff_cleanupSemantic(f),this.diff_cleanupEfficiency(f));else if(a&&"object"==typeof a&&void 0===c&&void 0===d)f=a,e=this.diff_text1(f);else if("string"==typeof a&&c&&"object"==typeof c&&void 0===d)e=a,f=c;else{if("string"!=typeof a||"string"!=typeof c||!d||"object"!=typeof d)throw Error("Unknown call format to patch_make.");e=a,f=d}if(0===f.length)return[];for(var g=[],h=new b.patch_obj,i=0,j=0,k=0,l=e,m=e,n=0;n<f.length;n++){var o=f[n][0],p=f[n][1];switch(i||0===o||(h.start1=j,h.start2=k),o){case 1:h.diffs[i++]=f[n],h.length2+=p.length,m=m.substring(0,k)+p+m.substring(k);break;case -1:h.length1+=p.length,h.diffs[i++]=f[n],m=m.substring(0,k)+m.substring(k+p.length);break;case 0:p.length<=2*this.Patch_Margin&&i&&f.length!=n+1?(h.diffs[i++]=f[n],h.length1+=p.length,h.length2+=p.length):p.length>=2*this.Patch_Margin&&i&&(this.patch_addContext_(h,l),g.push(h),h=new b.patch_obj,i=0,l=m,j=k)}1!==o&&(j+=p.length),-1!==o&&(k+=p.length)}return i&&(this.patch_addContext_(h,l),g.push(h)),g},b.prototype.patch_deepCopy=function(a){for(var c=[],d=0;d<a.length;d++){var e=a[d],f=new b.patch_obj;f.diffs=[];for(var g=0;g<e.diffs.length;g++)f.diffs[g]=new b.Diff(e.diffs[g][0],e.diffs[g][1]);f.start1=e.start1,f.start2=e.start2,f.length1=e.length1,f.length2=e.length2,c[d]=f}return c},b.prototype.patch_apply=function(a,b){if(0==a.length)return[b,[]];a=this.patch_deepCopy(a);var c=this.patch_addPadding(a);b=c+b+c,this.patch_splitMax(a);for(var d=0,e=[],f=0;f<a.length;f++){var g,h,i=a[f].start2+d,j=this.diff_text1(a[f].diffs),k=-1;if(j.length>this.Match_MaxBits?-1!=(g=this.match_main(b,j.substring(0,this.Match_MaxBits),i))&&(-1==(k=this.match_main(b,j.substring(j.length-this.Match_MaxBits),i+j.length-this.Match_MaxBits))||g>=k)&&(g=-1):g=this.match_main(b,j,i),-1==g)e[f]=!1,d-=a[f].length2-a[f].length1;else if(e[f]=!0,d=g-i,j==(h=-1==k?b.substring(g,g+j.length):b.substring(g,k+this.Match_MaxBits)))b=b.substring(0,g)+this.diff_text2(a[f].diffs)+b.substring(g+j.length);else{var l=this.diff_main(j,h,!1);if(j.length>this.Match_MaxBits&&this.diff_levenshtein(l)/j.length>this.Patch_DeleteThreshold)e[f]=!1;else{this.diff_cleanupSemanticLossless(l);for(var m,n=0,o=0;o<a[f].diffs.length;o++){var p=a[f].diffs[o];0!==p[0]&&(m=this.diff_xIndex(l,n)),1===p[0]?b=b.substring(0,g+m)+p[1]+b.substring(g+m):-1===p[0]&&(b=b.substring(0,g+m)+b.substring(g+this.diff_xIndex(l,n+p[1].length))),-1!==p[0]&&(n+=p[1].length)}}}}return[b=b.substring(c.length,b.length-c.length),e]},b.prototype.patch_addPadding=function(a){for(var c=this.Patch_Margin,d="",e=1;e<=c;e++)d+=String.fromCharCode(e);for(e=0;e<a.length;e++)a[e].start1+=c,a[e].start2+=c;var f=a[0],g=f.diffs;if(0==g.length||0!=g[0][0])g.unshift(new b.Diff(0,d)),f.start1-=c,f.start2-=c,f.length1+=c,f.length2+=c;else if(c>g[0][1].length){var h=c-g[0][1].length;g[0][1]=d.substring(g[0][1].length)+g[0][1],f.start1-=h,f.start2-=h,f.length1+=h,f.length2+=h}return 0==(g=(f=a[a.length-1]).diffs).length||0!=g[g.length-1][0]?(g.push(new b.Diff(0,d)),f.length1+=c,f.length2+=c):c>g[g.length-1][1].length&&(h=c-g[g.length-1][1].length,g[g.length-1][1]+=d.substring(0,h),f.length1+=h,f.length2+=h),d},b.prototype.patch_splitMax=function(a){for(var c=this.Match_MaxBits,d=0;d<a.length;d++)if(!(a[d].length1<=c)){var e=a[d];a.splice(d--,1);for(var f=e.start1,g=e.start2,h="";0!==e.diffs.length;){var i=new b.patch_obj,j=!0;for(i.start1=f-h.length,i.start2=g-h.length,""!==h&&(i.length1=i.length2=h.length,i.diffs.push(new b.Diff(0,h)));0!==e.diffs.length&&i.length1<c-this.Patch_Margin;){var k=e.diffs[0][0],l=e.diffs[0][1];1===k?(i.length2+=l.length,g+=l.length,i.diffs.push(e.diffs.shift()),j=!1):-1===k&&1==i.diffs.length&&0==i.diffs[0][0]&&l.length>2*c?(i.length1+=l.length,f+=l.length,j=!1,i.diffs.push(new b.Diff(k,l)),e.diffs.shift()):(l=l.substring(0,c-i.length1-this.Patch_Margin),i.length1+=l.length,f+=l.length,0===k?(i.length2+=l.length,g+=l.length):j=!1,i.diffs.push(new b.Diff(k,l)),l==e.diffs[0][1]?e.diffs.shift():e.diffs[0][1]=e.diffs[0][1].substring(l.length))}h=(h=this.diff_text2(i.diffs)).substring(h.length-this.Patch_Margin);var m=this.diff_text1(e.diffs).substring(0,this.Patch_Margin);""!==m&&(i.length1+=m.length,i.length2+=m.length,0!==i.diffs.length&&0===i.diffs[i.diffs.length-1][0]?i.diffs[i.diffs.length-1][1]+=m:i.diffs.push(new b.Diff(0,m))),j||a.splice(++d,0,i)}}},b.prototype.patch_toText=function(a){for(var b=[],c=0;c<a.length;c++)b[c]=a[c];return b.join("")},b.prototype.patch_fromText=function(a){var c=[];if(!a)return c;for(var d=a.split("\n"),e=0,f=/^@@ -(\d+),?(\d*) \+(\d+),?(\d*) @@$/;e<d.length;){var g=d[e].match(f);if(!g)throw Error("Invalid patch string: "+d[e]);var h=new b.patch_obj;for(c.push(h),h.start1=parseInt(g[1],10),""===g[2]?(h.start1--,h.length1=1):"0"==g[2]?h.length1=0:(h.start1--,h.length1=parseInt(g[2],10)),h.start2=parseInt(g[3],10),""===g[4]?(h.start2--,h.length2=1):"0"==g[4]?h.length2=0:(h.start2--,h.length2=parseInt(g[4],10)),e++;e<d.length;){var i=d[e].charAt(0);try{var j=decodeURI(d[e].substring(1))}catch(a){throw Error("Illegal escape in patch_fromText: "+j)}if("-"==i)h.diffs.push(new b.Diff(-1,j));else if("+"==i)h.diffs.push(new b.Diff(1,j));else if(" "==i)h.diffs.push(new b.Diff(0,j));else{if("@"==i)break;if(""!==i)throw Error('Invalid patch mode "'+i+'" in: '+j)}e++}}return c},(b.patch_obj=function(){this.diffs=[],this.start1=null,this.start2=null,this.length1=0,this.length2=0}).prototype.toString=function(){for(var a,b=["@@ -"+(0===this.length1?this.start1+",0":1==this.length1?this.start1+1:this.start1+1+","+this.length1)+" +"+(0===this.length2?this.start2+",0":1==this.length2?this.start2+1:this.start2+1+","+this.length2)+" @@\n"],c=0;c<this.diffs.length;c++){switch(this.diffs[c][0]){case 1:a="+";break;case -1:a="-";break;case 0:a=" "}b[c+1]=a+encodeURI(this.diffs[c][1])+"\n"}return b.join("").replace(/%20/g," ")},a.exports=b,a.exports.diff_match_patch=b,a.exports.DIFF_DELETE=-1,a.exports.DIFF_INSERT=1,a.exports.DIFF_EQUAL=0});function yL({taskId:a,fromHash:b,toHash:c}){let d=bX.i.getTaskDiff.useQuery({taskId:a,fromHash:b,toHash:c},{refetchOnWindowFocus:!1,staleTime:6e4}),e=(0,u.useMemo)(()=>{if(!d.data?.diff)return null;try{return function(a){var b=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},c=function(a){if(a.startsWith("diff --git"))return a;var b=a.indexOf("\n"),c=a.indexOf("\n",b+1),d=a.slice(0,b),e=a.slice(b+1,c),f=d.split(" ").slice(1,-3).join(" "),g=e.split(" ").slice(1,-3).join(" ");return["diff --git a/".concat(f," b/").concat(g),"index 1111111..2222222 100644","--- a/".concat(f),"+++ b/".concat(g),a.slice(c+1)].join("\n")}(a.trimStart());return v2.parse(c).map(function(a){var c;return c=a.hunks.map(function(a){var c,d="zip"===b.nearbySequences?(c=a.changes.reduce(function(a,b,c){var d=vV(a,3),e=d[0],f=d[1],g=d[2];return f?v3(b)&&g>=0?(e.splice(g+1,0,b),[e,b,g+2]):(e.push(b),[e,b,v4(b)&&v4(f)?g:c]):(e.push(b),[e,b,v4(b)?c:-1])},[[],null,-1]),vV(c,1)[0]):a.changes;return vS(vS({},a),{},{isPlain:!1,changes:d})}),vS(vS({},a),{},{hunks:c})})}(d.data.diff)[0]||null}catch(a){return console.error("Error parsing diff:",a),null}},[d.data?.diff]);if(d.isLoading)return(0,t.jsxs)(y.Stack,{align:"center",py:"xl",children:[(0,t.jsx)(vL.Loader,{size:"md"}),(0,t.jsx)(B.Text,{c:"dimmed",children:"Loading diff..."})]});if(d.isError)return(0,t.jsxs)(ve.Alert,{color:"red",icon:(0,t.jsx)(vO,{size:16}),children:["Failed to load diff: ",d.error?.message]});let f=d.data;return f?.diff&&""!==f.diff.trim()?e?(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(B.Text,{fw:500,size:"sm",children:"Changes Summary"}),(0,t.jsxs)(bZ.Badge,{variant:"light",color:"green",size:"sm",children:["+",f.additions]}),(0,t.jsxs)(bZ.Badge,{variant:"light",color:"red",size:"sm",children:["-",f.deletions]})]}),(0,t.jsx)(z.Group,{gap:"xs",children:(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["From ",b.substring(0,7)," to ",c.substring(0,7)]})})]}),(0,t.jsx)(bY.Paper,{withBorder:!0,children:(0,t.jsx)(vM.ScrollArea,{h:500,children:(0,t.jsx)("div",{style:{padding:"16px"},children:(0,t.jsx)(yE,{viewType:"split",diffType:e.type,hunks:e.hunks,renderToken:(a,b,c)=>b(a,c),children:a=>a.map(a=>(0,t.jsx)(yB,{hunk:a},`${a.oldStart}-${a.oldLines}-${a.newStart}-${a.newLines}`))})})})}),e&&(0,t.jsx)(bY.Paper,{p:"sm",withBorder:!0,children:(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["File: ",e.newPath||e.oldPath]}),(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["• Type: ",e.type]}),e.oldRevision&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["• From: ",e.oldRevision.substring(0,7)]}),e.newRevision&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["• To: ",e.newRevision.substring(0,7)]})]})})]}):(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsx)(ve.Alert,{color:"yellow",icon:(0,t.jsx)(vP,{size:16}),children:"Unable to parse diff for visual display. Showing raw diff below."}),(0,t.jsx)(bY.Paper,{withBorder:!0,p:"md",children:(0,t.jsx)(vM.ScrollArea,{h:400,children:(0,t.jsx)(B.Text,{component:"pre",size:"sm",style:{whiteSpace:"pre-wrap"},children:f.diff})})})]}):(0,t.jsx)(ve.Alert,{color:"blue",icon:(0,t.jsx)(vP,{size:16}),children:"No changes found between these versions."})}function yM({task:a,onClose:b}){let[c,d]=(0,u.useState)(null),[e,f]=(0,u.useState)(!1),[g,h]=(0,u.useState)(!1),[i,j]=(0,u.useState)(null),[k,l]=(0,u.useState)(null),[m,n]=(0,u.useState)(1),o=bX.i.getTaskHistory.useQuery({taskId:a.id,limit:100},{refetchOnWindowFocus:!1,staleTime:3e4}),p=bX.i.getTaskVersion.useQuery({taskId:a.id,commitHash:c},{enabled:!!c,refetchOnWindowFocus:!1});if(o.isLoading)return(0,t.jsxs)(y.Stack,{align:"center",py:"xl",children:[(0,t.jsx)(vL.Loader,{size:"md"}),(0,t.jsx)(B.Text,{c:"dimmed",children:"Loading task history..."})]});if(o.isError)return(0,t.jsxs)(ve.Alert,{color:"red",icon:(0,t.jsx)(vO,{size:16}),children:["Failed to load task history: ",o.error?.message]});if(!o.data?.available)return(0,t.jsx)(ve.Alert,{color:"yellow",icon:(0,t.jsx)(vP,{size:16}),children:o.data?.error?`Git history not available: ${o.data.error}`:"Git repository not available or task file not tracked in Git"});let q=o.data.history||[];if(0===q.length)return(0,t.jsx)(ve.Alert,{color:"blue",icon:(0,t.jsx)(vP,{size:16}),children:"No history available for this task. The task file may be new or not yet committed to Git."});let r=Math.ceil(q.length/20),s=(m-1)*20,v=q.slice(s,s+20);return(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(A.Title,{order:4,children:"Task History"}),(0,t.jsxs)(bZ.Badge,{variant:"light",size:"sm",children:[q.length," ",1===q.length?"commit":"commits"]})]}),b&&(0,t.jsx)(H.Button,{variant:"subtle",size:"xs",onClick:b,children:"Close"})]}),i&&!k&&(0,t.jsx)(ve.Alert,{color:"blue",icon:(0,t.jsx)(vP,{size:16}),children:(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsxs)(B.Text,{size:"sm",children:["Selected"," ",(0,t.jsx)(B.Text,{span:!0,fw:500,children:i.substring(0,7)})," ","for comparison. Click another commit to compare."]}),(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",onClick:()=>j(null),children:"Cancel"})]})}),(0,t.jsxs)(bY.Paper,{withBorder:!0,p:"md",children:[(0,t.jsx)(vM.ScrollArea,{h:500,children:(0,t.jsx)(vq.Timeline,{active:-1,bulletSize:24,lineWidth:2,children:v.map((a,b)=>{let c=i===a.commitHash,e=a.changes.additions>0||a.changes.deletions>0;return(0,t.jsx)(vq.Timeline.Item,{bullet:(0,t.jsx)(ca,{size:12}),title:(0,t.jsxs)(z.Group,{gap:"xs",wrap:"nowrap",children:[(0,t.jsx)(B.Text,{fw:500,size:"sm",truncate:!0,style:{flex:1},children:a.message}),(0,t.jsx)(bZ.Badge,{variant:c?"filled":"light",size:"xs",color:c?"blue":"gray",children:a.shortHash})]}),children:(0,t.jsxs)(y.Stack,{gap:"xs",children:[(0,t.jsxs)(z.Group,{gap:"xs",wrap:"nowrap",children:[(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["by"," ",(0,t.jsx)(B.Text,{span:!0,fw:500,children:a.author})]}),(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:"•"}),(0,t.jsx)(b_.Tooltip,{label:a.date.toLocaleString(),children:(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:(a=>{let b=new Date().getTime()-a.getTime(),c=Math.floor(b/864e5);if(0===c){let a=Math.floor(b/36e5);if(0===a){let a=Math.floor(b/6e4);return a<=1?"just now":`${a} minutes ago`}return 1===a?"1 hour ago":`${a} hours ago`}return 1===c?"yesterday":c<7?`${c} days ago`:a.toLocaleDateString()})(a.date)})}),e&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:"•"}),(0,t.jsxs)(z.Group,{gap:4,children:[a.changes.additions>0&&(0,t.jsxs)(B.Text,{size:"xs",c:"green",children:["+",a.changes.additions]}),a.changes.deletions>0&&(0,t.jsxs)(B.Text,{size:"xs",c:"red",children:["-",a.changes.deletions]})]})]})]}),(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(b_.Tooltip,{label:"View file content at this version",children:(0,t.jsx)(C.ActionIcon,{variant:"subtle",size:"sm",onClick:()=>{d(a.commitHash),f(!0)},children:(0,t.jsx)(vj,{size:14})})}),(0,t.jsx)(b_.Tooltip,{label:i?i===a.commitHash?"Cancel comparison":"Compare with selected":"Select for comparison",children:(0,t.jsx)(C.ActionIcon,{variant:c?"filled":"subtle",size:"sm",color:c?"blue":"gray",onClick:()=>{var b;return b=a.commitHash,void(i?i===b?j(null):(l(b),h(!0)):j(b))},children:(0,t.jsx)(vQ,{size:14})})}),b<v.length-1&&(0,t.jsx)(b_.Tooltip,{label:"Compare with next commit",children:(0,t.jsx)(C.ActionIcon,{variant:"subtle",size:"sm",onClick:()=>{var c,d;return c=v[b+1].commitHash,d=a.commitHash,void(j(c),l(d),h(!0))},children:(0,t.jsx)(cM,{size:14})})})]})]})},a.commitHash)})})}),r>1&&(0,t.jsx)(z.Group,{justify:"center",mt:"md",children:(0,t.jsx)(vN.Pagination,{value:m,onChange:n,total:r,size:"sm"})})]}),(0,t.jsxs)(cG.Modal,{opened:e,onClose:()=>{f(!1),d(null)},title:(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(B.Text,{fw:500,children:"Task Content"}),c&&(0,t.jsx)(bZ.Badge,{variant:"light",size:"sm",children:c.substring(0,7)})]}),size:"860px",styles:{body:{maxHeight:"calc(100vh - 200px)",overflowY:"auto"}},children:[p.isLoading&&(0,t.jsxs)(y.Stack,{align:"center",py:"xl",children:[(0,t.jsx)(vL.Loader,{size:"md"}),(0,t.jsx)(B.Text,{c:"dimmed",children:"Loading version content..."})]}),p.isError&&(0,t.jsxs)(ve.Alert,{color:"red",icon:(0,t.jsx)(vO,{size:16}),children:["Failed to load version: ",p.error?.message]}),p.data&&(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsxs)(B.Text,{size:"sm",c:"dimmed",children:["by"," ",(0,t.jsx)(B.Text,{span:!0,fw:500,children:p.data.author})]}),(0,t.jsxs)(B.Text,{size:"sm",c:"dimmed",children:["on ",p.data.date.toLocaleString()]})]}),(0,t.jsx)(vM.ScrollArea,{h:400,children:(0,t.jsx)(bY.Paper,{p:"md",withBorder:!0,children:(0,t.jsx)(B.Text,{component:"pre",size:"sm",style:{whiteSpace:"pre-wrap"},children:p.data.content})})})]})]}),(0,t.jsx)(cG.Modal,{opened:g,onClose:()=>{h(!1),j(null),l(null)},title:(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(B.Text,{fw:500,children:"Compare Versions"}),i&&k&&(0,t.jsxs)(z.Group,{gap:4,children:[(0,t.jsx)(bZ.Badge,{variant:"light",size:"sm",color:"red",children:i.substring(0,7)}),(0,t.jsx)(B.Text,{size:"sm",children:"→"}),(0,t.jsx)(bZ.Badge,{variant:"light",size:"sm",color:"green",children:k.substring(0,7)})]})]}),size:"860px",styles:{body:{maxHeight:"calc(100vh - 200px)",overflowY:"auto"}},children:i&&k&&(0,t.jsx)(yL,{taskId:a.id,fromHash:i,toHash:k})})]})}yK.DIFF_EQUAL,yK.DIFF_DELETE,yK.DIFF_INSERT,c(47107);let yN=[{value:"feature",label:"Feature"},{value:"bug",label:"Bug"},{value:"chore",label:"Chore"},{value:"refactor",label:"Refactor"},{value:"test",label:"Test"},{value:"doc",label:"Documentation"}],yO=[{value:"backlog",label:"Backlog"},{value:"in-progress",label:"In Progress"},{value:"review",label:"Review"},{value:"done",label:"Done"}],yP=[{value:"low",label:"Low"},{value:"medium",label:"Medium"},{value:"high",label:"High"}];function yQ({opened:a,onClose:b,mode:c,taskData:d,taskId:e,defaultStatus:f}){var g,h;let i="edit"===c?e||d?.id:null,[j,k]=(0,u.useState)({}),[l,m]=(0,u.useState)({}),[n,o]=(0,u.useState)(!1),[p,q]=(0,u.useState)(!1),[r,s]=(0,u.useState)("details"),[v,w]=(0,u.useState)(!1),x=(0,cn.useRouter)(),C=(0,cn.useSearchParams)(),D=(0,cn.usePathname)()??"/",E=(0,u.useRef)(null),F=(0,u.useRef)(!1),G=(0,u.useRef)(!1),J=(0,u.useRef)(null),K=(0,u.useRef)(null),L=(0,u.useRef)(""),M=(0,u.useRef)({}),N=(0,u.useRef)({}),O=(0,cb.jE)(),P=cd(i||"");(0,u.useMemo)(()=>C?.get("tab")??null,[C]);let{data:Q,error:R}=bX.i.getTask.useQuery({id:i},{enabled:!!i&&a&&"edit"===c,refetchOnMount:!0,refetchOnWindowFocus:!1});g="edit"===c&&i||void 0,h=a=>{if(a&&a.id===i&&"edit"===c){F.current=!0;let b={title:a.title,content:a.content,type:a.type,status:a.status,priority:a.priority,due_date:a.due_date},c=M.current,d=N.current,e=a=>c[a]!==d[a],f={title:e("title")?c.title:b.title,content:e("content")?c.content:b.content,type:e("type")?c.type:b.type,status:e("status")?c.status:b.status,priority:e("priority")?c.priority:b.priority,due_date:e("due_date")?c.due_date:b.due_date},g={title:e("title")?d.title:b.title,content:e("content")?d.content:b.content,type:e("type")?d.type:b.type,status:e("status")?d.status:b.status,priority:e("priority")?d.priority:b.priority,due_date:e("due_date")?d.due_date:b.due_date};k(f),m(g),setTimeout(()=>{F.current=!1},100)}},bX.i.onTaskUpdate.useSubscription({taskId:g},{enabled:!!g&&!!h,onData:a=>{"update"===a.type&&a.task&&h&&h(a.task)},onError:a=>{console.error("Task subscription error:",a)}});let S=bX.i.useUtils(),T=bX.i.listProviders.useQuery(void 0,{refetchOnWindowFocus:!1,staleTime:6e4}),U=bX.i.getRoutingPolicy.useQuery(void 0,{refetchOnWindowFocus:!1,staleTime:6e4}),V=bX.i.setOperationConfig?.useMutation?.()||{mutateAsync:async a=>{},isPending:!1},W=bX.i.openInEditor.useMutation(),X=bX.i.openInTerminal?.useMutation?.()||{mutateAsync:async()=>{},isPending:!1},Y=bX.i.createWorktree.useMutation({onSuccess:async()=>{await S.listWorktrees.invalidate()}}),Z=bX.i.cleanupWorktree?.useMutation?.({onSuccess:async()=>{await S.listWorktrees.invalidate()}}),$=bX.i.createTask.useMutation({onSuccess:a=>{O.invalidateQueries({queryKey:[["listTasks"]]}),I.notifications.show({title:"Task created",message:`${a.id}: ${a.title}`,color:"green"}),ae()}}),_=bX.i.updateTask.useMutation({onSuccess:(a,b)=>{if(S.listTasks.invalidate(),b){let{id:a,...c}=b;m({...l,...c}),void 0!==c.content&&(L.current=c.content)}o(!0),J.current&&clearTimeout(J.current),J.current=setTimeout(()=>{o(!1)},2e3)},onError:a=>{console.warn("Auto-save failed:",a.message)}}),aa=bX.i.deleteTask.useMutation({onSuccess:()=>{S.listTasks.invalidate(),b()}}),ab=bX.i.commitChanges?.useMutation({onSuccess:()=>{S.listTasks.invalidate(),m({...j}),q(!0),K.current&&clearTimeout(K.current),K.current=setTimeout(()=>{q(!1)},3e3)},onError:a=>{console.error("Git commit failed:",a);let b=a.message||"Unknown error occurred";b.includes("not found")?alert("Failed to commit: Task may have been deleted or moved. Please refresh and try again."):alert("Failed to create git commit: "+b)}});(0,u.useCallback)((a,b)=>{E.current&&clearTimeout(E.current),E.current=setTimeout(()=>{let d=(a.title??b.title??"").trim();if("edit"===c&&""===d)return;let e=a.title!==b.title||a.content!==b.content||a.type!==b.type||a.status!==b.status||a.priority!==b.priority||a.due_date!==b.due_date;Q?.id&&e&&!_.isPending&&_.mutate({id:Q.id,...a})},1e3)},[Q?.id,_,c]);let ac=(0,u.useCallback)(()=>{E.current&&clearTimeout(E.current),Q?.id&&!_.isPending&&_.mutate({id:Q.id,...j})},[Q?.id,j,_]),ad=()=>{j.title&&$.mutate({title:j.title,type:j.type,status:j.status,priority:j.priority,due_date:j.due_date||"",content:j.content||""})};if("edit"===c&&!Q&&!d)return null;let ae=()=>{s("details"),"create"===c&&k({title:"",type:"feature",status:f||"backlog",priority:"medium",due_date:"",content:""}),b()},af=async()=>{if(al)try{await Y.mutateAsync({taskId:al.id}),await S.listWorktrees.invalidate()}catch(a){console.error("Failed to create worktree:",a)}},ag=async()=>{if(P?.path)return P.path;if(al)try{await Y.mutateAsync({taskId:al.id});let a=await S.getWorktreeInfo?.fetch?.({taskId:al.id});if(a&&"object"==typeof a&&"path"in a)return a.path;await S.listWorktrees.invalidate();return}catch(a){console.error("Failed to ensure worktree:",a);return}},ah=async()=>{try{let a=await ag()||P?.path;if(!a)return;await W.mutateAsync({worktreePath:a})}catch(a){console.error("Failed to open editor:",a)}},ai=async()=>{try{let a=await ag()||P?.path;if(!a)return;await X.mutateAsync({worktreePath:a})}catch(a){console.error("Failed to open Terminal:",a)}},aj=async()=>{if(al&&P?.path&&confirm("Remove this worktree and its branch? Uncommitted changes will be lost."))try{if(Z)await Z.mutateAsync({taskId:al.id,worktreePath:P.path,branchName:P.branchName,isConnectedToTask:!0,force:!0});else if(bX.i.deleteWorktree?.useMutation){let a=bX.i.deleteWorktree.useMutation();await a.mutateAsync({taskId:al.id,force:!0})}await S.listWorktrees.invalidate()}catch(a){console.error("Failed to cleanup worktree:",a)}},ak=a=>{if(a){let b="create"===c&&"details"!==a?"details":a;s(b);let d=cN(D,C,"tab","details"===b?null:b);x.push(d,{scroll:!1})}},al=d||Q;return(0,t.jsxs)(cG.Modal,{opened:a,onClose:ae,title:"create"===c?"Create New Task":(0,t.jsxs)(y.Stack,{gap:"xs",children:[(0,t.jsxs)(z.Group,{justify:"flex-start",children:[(0,t.jsx)(cH.Code,{children:al?.id}),(0,t.jsx)(B.Text,{children:j.title||al?.title})]}),P&&(0,t.jsx)(vK,{worktree:P,size:"sm",showActions:!0})]}),size:"860px",styles:{body:{maxHeight:"calc(100vh - 200px)",overflowY:"auto"}},children:["create"===c?(0,t.jsxs)(cI.Tabs,{value:r,onChange:ak,children:[(0,t.jsx)(cI.Tabs.List,{children:(0,t.jsx)(cI.Tabs.Tab,{value:"details",leftSection:(0,t.jsx)(b5,{size:16}),children:"Task Details"})}),(0,t.jsxs)(cI.Tabs.Panel,{value:"details",pt:"md",children:[(0,t.jsxs)(y.Stack,{gap:"md",style:{paddingBottom:"10px"},children:[(0,t.jsx)(cu.TextInput,{label:"Title",value:j.title||"",onChange:a=>k({...j,title:a.target.value})}),(0,t.jsxs)(z.Group,{grow:!0,children:[(0,t.jsx)(cw.Select,{label:"Type",value:j.type||"feature",data:yN,onChange:a=>k({...j,type:a})}),(0,t.jsx)(cw.Select,{label:"Status",value:j.status||f||"backlog",data:yO,onChange:a=>k({...j,status:a})}),(0,t.jsx)(cw.Select,{label:"Priority",value:j.priority||"medium",data:yP,onChange:a=>k({...j,priority:a})}),(0,t.jsx)(cu.TextInput,{label:"Due Date",type:"date",value:j.due_date||"",onChange:a=>k({...j,due_date:a.target.value})})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsxs)(z.Group,{justify:"space-between",mb:"xs",children:[(0,t.jsx)(B.Text,{size:"sm",fw:500,children:"Content"}),(0,t.jsx)(z.Group,{gap:"sm",children:al&&(0,t.jsx)(t.Fragment,{children:(0,t.jsxs)(cJ.Menu,{withinPortal:!0,position:"bottom-start",shadow:"md",children:[(0,t.jsx)(cJ.Menu.Target,{children:(0,t.jsx)(H.Button,{size:"xs",variant:"outline",loading:T.isLoading,children:(()=>{let a=U.data,b=a?.operations?.improve_task,c=b?.provider||a?.defaultProvider||"Provider",d=b?.model?`:${b.model}`:"";return`Improve Settings: ${c}${d}`})()})}),(0,t.jsxs)(cJ.Menu.Dropdown,{children:[T.isLoading&&(0,t.jsx)(cJ.Menu.Label,{children:"Loading providers…"}),!T.isLoading&&(!T.data||0===T.data.length)&&(0,t.jsx)(cJ.Menu.Label,{children:"No providers found"}),T.data?.filter(a=>a.available).map((a,b)=>(0,t.jsxs)("div",{children:[(0,t.jsx)(cJ.Menu.Label,{children:a.displayName||a.name}),(a.models&&a.models.length>0?a.models:["default"]).map(b=>{let c="string"==typeof b?b:b.id||String(b),d="string"==typeof b?b:b.name||b.id||String(b);return(0,t.jsxs)(cJ.Menu.Item,{onClick:async()=>{try{await V.mutateAsync({operation:"improve_task",config:{provider:a.name,model:c}}),await U.refetch()}catch(a){console.error("Failed to set improve_task routing:",a)}},children:[a.name,":",d]},`improve-${a.name}:${c}`)}),b<(T.data?.length||1)-1&&(0,t.jsx)(b0.Divider,{my:4})]},`improve-${a.name}-${b}`))]})]})})})]}),(0,t.jsx)(u_,{value:j.content||"",onChange:a=>k(b=>({...b,content:a})),placeholder:"Task description and acceptance criteria...",minHeight:"200px"})]})]}),(0,t.jsxs)(z.Group,{justify:"space-between",style:{position:"sticky",bottom:"-20px",left:0,right:0,padding:"16px",backgroundColor:"var(--mantine-color-body)",borderTop:"1px solid var(--mantine-color-default-border)",marginLeft:"-16px",marginRight:"-16px",marginBottom:"-16px",zIndex:10},children:[(0,t.jsx)(z.Group,{}),(0,t.jsx)(z.Group,{justify:"flex-end",children:(0,t.jsx)(H.Button,{onClick:ad,leftSection:(0,t.jsx)(cK,{size:16}),disabled:!(j.title||"").trim(),loading:$.isPending,children:"Create Task"})})]})]})]}):(0,t.jsxs)(cI.Tabs,{value:r,onChange:ak,children:[(0,t.jsxs)(cI.Tabs.List,{children:[(0,t.jsx)(cI.Tabs.Tab,{value:"details",leftSection:(0,t.jsx)(b5,{size:16}),children:"Task Details"}),"edit"===c&&al&&(0,t.jsx)(cI.Tabs.Tab,{value:"vibing",leftSection:(0,t.jsx)(b7,{size:16}),children:"Vibing"})]}),(0,t.jsxs)(cI.Tabs.Panel,{value:"details",pt:"md",children:[(0,t.jsxs)(y.Stack,{gap:"md",style:{paddingBottom:"10px"},children:[(0,t.jsx)(cu.TextInput,{label:"Title",value:j.title||"",onChange:a=>k({...j,title:a.target.value})}),(0,t.jsxs)(z.Group,{grow:!0,children:[(0,t.jsx)(cw.Select,{label:"Type",value:j.type||al?.type,data:yN,onChange:a=>k({...j,type:a})}),(0,t.jsx)(cw.Select,{label:"Status",value:j.status||al?.status,data:yO,onChange:a=>k({...j,status:a})}),(0,t.jsx)(cw.Select,{label:"Priority",value:j.priority||al?.priority,data:yP,onChange:a=>k({...j,priority:a})}),(0,t.jsx)(cu.TextInput,{label:"Due Date",type:"date",value:j.due_date||al?.due_date||"",onChange:a=>k({...j,due_date:a.target.value})})]}),"edit"===c&&al&&(0,t.jsx)(bY.Paper,{p:"xs",withBorder:!0,children:(0,t.jsxs)(y.Stack,{gap:"xs",children:[(0,t.jsx)(A.Title,{order:6,children:"Quick Actions"}),(0,t.jsxs)(z.Group,{gap:"xs",wrap:"wrap",children:[(0,t.jsx)(H.Button,{size:"xs",onClick:af,loading:Y.isPending,disabled:!!P?.path||Y.isPending,children:"Setup Branch and Worktree"}),(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",color:"red",leftSection:(0,t.jsx)(cL,{size:14}),onClick:aj,loading:!!Z?.isPending,disabled:!P?.path,children:"Cleanup Branch and Worktree"}),(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:ah,children:"Open in Code Editor"}),(0,t.jsx)(H.Button,{size:"xs",variant:"outline",onClick:ai,children:"Open in Terminal"})]})]})}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsxs)(z.Group,{justify:"space-between",mb:"xs",children:[(0,t.jsx)(B.Text,{size:"sm",fw:500,children:"Content"}),(0,t.jsxs)(z.Group,{gap:"sm",children:[n&&(0,t.jsx)(B.Text,{size:"xs",c:"green",fw:500,children:"✅ Auto Saved"}),p&&(0,t.jsx)(B.Text,{size:"xs",c:"blue",fw:500,children:"\uD83C\uDF89 Commit Success"}),al&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(cJ.Menu,{withinPortal:!0,position:"bottom-start",shadow:"md",children:[(0,t.jsx)(cJ.Menu.Target,{children:(0,t.jsx)(H.Button,{size:"xs",variant:"outline",loading:T.isLoading,children:(()=>{let a=U.data,b=a?.operations?.improve_task,c=b?.provider||a?.defaultProvider||"Provider",d=b?.model?`:${b.model}`:"";return`Improve Settings: ${c}${d}`})()})}),(0,t.jsxs)(cJ.Menu.Dropdown,{children:[T.isLoading&&(0,t.jsx)(cJ.Menu.Label,{children:"Loading providers…"}),!T.isLoading&&(!T.data||0===T.data.length)&&(0,t.jsx)(cJ.Menu.Label,{children:"No providers found"}),T.data?.filter(a=>a.available).map((a,b)=>(0,t.jsxs)("div",{children:[(0,t.jsx)(cJ.Menu.Label,{children:a.displayName||a.name}),(a.models&&a.models.length>0?a.models:["default"]).map(b=>{let c="string"==typeof b?b:b.id||String(b),d="string"==typeof b?b:b.name||b.id||String(b);return(0,t.jsxs)(cJ.Menu.Item,{onClick:async()=>{try{await V.mutateAsync({operation:"improve_task",config:{provider:a.name,model:c}}),await U.refetch()}catch(a){console.error("Failed to set improve_task routing:",a)}},children:[a.name,":",d]},`improve2-${a.name}:${c}`)}),b<(T.data?.length||1)-1&&(0,t.jsx)(b0.Divider,{my:4})]},`improve2-${a.name}-${b}`))]})]}),(0,t.jsx)(H.Button,{size:"xs",variant:"outline",leftSection:(0,t.jsx)(cM,{size:14}),onClick:()=>w(!0),children:"View History"}),(0,t.jsx)(vb,{task:al,title:j.title||al.title,type:j.type||al.type,priority:j.priority||al.priority,content:j.content||al.content,onAccept:a=>{"edit"===c&&(G.current=!0),k(b=>({...b,content:a.content,type:a.type,priority:a.priority,...a.title&&{title:a.title}}))}})]})]})]}),(0,t.jsx)(u_,{value:j.content||"",onChange:a=>k(b=>({...b,content:a})),onSave:"edit"===c?ac:void 0,placeholder:"Task description and acceptance criteria...",minHeight:"200px"})]}),"edit"===c&&al&&(0,t.jsxs)("div",{children:[(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Created:"," ",al?.created_at?new Date(al.created_at).toLocaleString():"Unknown"]}),(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Updated:"," ",al?.updated_at?new Date(al.updated_at).toLocaleString():"Unknown"]})]})]}),(0,t.jsxs)(z.Group,{justify:"space-between",style:{position:"sticky",bottom:"-20px",left:0,right:0,padding:"16px",backgroundColor:"var(--mantine-color-body)",borderTop:"1px solid var(--mantine-color-default-border)",marginLeft:"-16px",marginRight:"-16px",marginBottom:"-16px",zIndex:10},children:[(0,t.jsx)(z.Group,{children:al&&(0,t.jsx)(H.Button,{variant:"filled",color:"red",onClick:()=>{confirm("Are you sure you want to delete this task?")&&aa.mutate({id:al.id})},leftSection:(0,t.jsx)(cL,{size:16}),children:"Delete Task"})}),(0,t.jsx)(z.Group,{justify:"flex-end",children:"edit"===c&&al?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(H.Button,{onClick:()=>{s("vibing");let a=cN(D,C,"tab","vibing");x.push(a,{scroll:!1})},leftSection:(0,t.jsx)(b7,{size:16}),variant:"gradient",gradient:{from:"blue",to:"cyan"},children:"Start Vibing"}),(0,t.jsx)(H.Button,{onClick:()=>{if("create"===c)return;let a=d||Q;if(!ab||!a)return void alert("Git operations are not available. Please check if Git service is configured.");let b=(j.title??a.title??"").trim();if(!b)return void I.notifications.show({title:"Title required",message:"Please enter a task title.",color:"red"});let e=`Update ${a.id}: ${b}`,f=`.vibeman/tasks/${a.id}.md`;ab.mutate({taskId:a.id,message:e,files:[f]})},leftSection:(0,t.jsx)(cK,{size:16}),disabled:!ab||ab.isPending||!(j.title??al?.title??"").trim(),loading:ab?.isPending,children:"Save Changes"})]}):(0,t.jsx)(H.Button,{onClick:ad,leftSection:(0,t.jsx)(cK,{size:16}),disabled:!(j.title||"").trim(),loading:$.isPending,children:"Create Task"})})]})]}),(0,t.jsx)(cI.Tabs.Panel,{value:"vibing",pt:"md",children:al&&(0,t.jsx)(vI,{task:al,disableOptions:{autoCommit:!0,createPR:!0,autoMerge:!0}})})]}),al&&(0,t.jsx)(cG.Modal,{opened:v,onClose:()=>w(!1),title:"Task History",size:"860px",styles:{body:{maxHeight:"calc(100vh - 200px)",overflowY:"auto"}},children:(0,t.jsx)(yM,{task:al,onClose:()=>w(!1)})})]})}var yR=c(47764),yS=c(50340),yT=c(48200),yU=E("outline","wand","IconWand",[["path",{d:"M6 21l15 -15l-3 -3l-15 15l3 3",key:"svg-0"}],["path",{d:"M15 6l3 3",key:"svg-1"}],["path",{d:"M9 3a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2",key:"svg-2"}],["path",{d:"M19 13a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2",key:"svg-3"}]]),yV=c(94496),yW=c.n(yV);let yX=[{value:"claude-code",label:"Claude Code"},{value:"codex",label:"Codex CLI"}],yY=[{value:"claude-sonnet-4-20250514",label:"Claude Sonnet 4"},{value:"claude-opus-4-1-20250805",label:"Claude Opus 4.1"},{value:"claude-3-5-haiku-20241022",label:"Claude 3.5 Haiku"}],yZ=[{value:"gpt-5",label:"gpt‑5"}];function y$(a){return"codex"===a?yZ:yY}let y_=[{value:"vscode",label:"Visual Studio Code"},{value:"cursor",label:"Cursor"},{value:"vim",label:"Vim"},{value:"custom",label:"Custom"}],y0=[{value:"system",label:"System Default"},{value:"iterm2",label:"iTerm2"},{value:"warp",label:"Warp"},{value:"custom",label:"Custom"}];function y1({opened:a,onClose:b}){let c=({label:a,tip:b})=>(0,t.jsxs)(z.Group,{gap:6,align:"center",children:[(0,t.jsx)(B.Text,{size:"sm",fw:500,children:a}),b&&(0,t.jsx)(b_.Tooltip,{label:b,withArrow:!0,position:"right-start",children:(0,t.jsx)(C.ActionIcon,{variant:"subtle",size:"xs","aria-label":`${a} help`,children:(0,t.jsx)(vP,{size:14})})})]}),[d,e]=(0,u.useState)(null),[f,g]=(0,u.useState)(null),[h,i]=(0,u.useState)(!1),[j,k]=(0,u.useState)([]),[l,m]=(0,u.useState)(!1),[n,o]=(0,u.useState)({}),[p,q]=(0,u.useState)(null),[r,s]=(0,u.useState)(null),{data:v,isLoading:w}=bX.i.getSettings.useQuery(void 0,{enabled:a}),x=bX.i.listProviders.useQuery(void 0,{enabled:a}),A=bX.i.getEditorPresets.useQuery(void 0,{enabled:a}),D=bX.i.getTerminalPresets.useQuery(void 0,{enabled:a}),E=bX.i.detectAllProviders.useQuery(void 0,{enabled:a}),J=bX.i.getLocalConfigInfo.useQuery(void 0,{enabled:a}),K=bX.i.updateSettings.useMutation({onSuccess:()=>{I.notifications.show({title:"Settings Saved",message:"Your settings have been updated successfully.",color:"green",icon:(0,t.jsx)(vl,{size:16})}),I.notifications.show({title:"Restart May Be Required",message:"Some changes apply after restarting the command.",color:"blue",icon:(0,t.jsx)(vP,{size:16})}),i(!1),k([])},onError:a=>{I.notifications.show({title:"Save Failed",message:a.message,color:"red",icon:(0,t.jsx)(ce,{size:16})})}}),L=bX.i.resetToDefaults.useMutation({onSuccess:a=>{e(a),g(a),i(!1),k([]),I.notifications.show({title:"Settings Reset",message:"Settings have been reset to defaults.",color:"blue",icon:(0,t.jsx)(b3,{size:16})})}}),M=bX.i.detectQualityChecks.useMutation({onSuccess:a=>{a?.checks?(e(b=>{if(!b)return b;let c={...b};return c.quality=c.quality||{checks:[]},c.quality.checks=a.checks,c}),i(!0),I.notifications.show({title:"Quality Checks Detected",message:`${a.checks.length} check(s) detected and staged. Review and Save to persist.`,color:"green",icon:(0,t.jsx)(vl,{size:16})})):I.notifications.show({title:"No Checks Detected",message:"AI could not determine suitable quality checks for this project.",color:"yellow",icon:(0,t.jsx)(vP,{size:16})})},onError:a=>{I.notifications.show({title:"Detection Failed",message:a?.message||"Unable to detect quality checks.",color:"red",icon:(0,t.jsx)(ce,{size:16})})}}),N=bX.i.applyEditorPreset.useMutation({onSuccess:(a,b)=>{if(a.success&&A.data){let a=A.data[b.presetName];if(a&&d){let b={...d};b.development={...b.development,editor:{...a}},e(b),I.notifications.show({title:"Editor Preset Applied",message:"Editor configuration has been updated.",color:"green",icon:(0,t.jsx)(vl,{size:16})})}}else I.notifications.show({title:"Failed to Apply Preset",message:a.errors?.[0]?.message||"Unknown error",color:"red",icon:(0,t.jsx)(ce,{size:16})})},onError:a=>{I.notifications.show({title:"Failed to Apply Preset",message:a.message,color:"red",icon:(0,t.jsx)(ce,{size:16})})}}),O=bX.i.applyTerminalPreset.useMutation({onSuccess:(a,b)=>{if(a.success&&D.data){let a=D.data[b.presetName];if(a&&d){let b={...d};b.development={...b.development,terminal:{...a}},e(b),I.notifications.show({title:"Terminal Preset Applied",message:"Terminal configuration has been updated.",color:"green",icon:(0,t.jsx)(vl,{size:16})})}}else I.notifications.show({title:"Failed to Apply Preset",message:a.errors?.[0]?.message||"Unknown error",color:"red",icon:(0,t.jsx)(ce,{size:16})})},onError:a=>{I.notifications.show({title:"Failed to Apply Preset",message:a.message,color:"red",icon:(0,t.jsx)(ce,{size:16})})}}),P=bX.i.setProviderPath.useMutation({onSuccess:(a,b)=>{E.refetch(),J.refetch(),x.refetch(),o(a=>({...a,[b.provider]:b.path})),I.notifications.show({title:"Provider Path Updated",message:"Provider path has been set successfully.",color:"green",icon:(0,t.jsx)(vl,{size:16})})},onError:a=>{I.notifications.show({title:"Failed to Set Provider Path",message:a.message,color:"red",icon:(0,t.jsx)(ce,{size:16})})}}),Q=bX.i.clearProviderPath.useMutation({onSuccess:(a,b)=>{E.refetch(),J.refetch(),x.refetch(),o(a=>({...a,[b.provider]:""})),I.notifications.show({title:"Provider Path Cleared",message:"Provider path has been reset to auto-detection.",color:"blue",icon:(0,t.jsx)(b3,{size:16})})},onError:a=>{I.notifications.show({title:"Failed to Clear Provider Path",message:a.message,color:"red",icon:(0,t.jsx)(ce,{size:16})})}}),R=(a,b)=>{o(c=>({...c,[a]:b}))},S=async a=>{let b=(n[a]??"").trim();if(!b)return void I.notifications.show({title:"Invalid Path",message:"Enter a binary path before updating.",color:"red",icon:(0,t.jsx)(ce,{size:16})});q(a);try{await P.mutateAsync({provider:a,path:b})}catch(a){}finally{q(null)}},T=async a=>{s(a);try{await Q.mutateAsync({provider:a})}catch(a){}finally{s(null)}},U=(a,b)=>{if(!d)return;let c=JSON.parse(JSON.stringify(d)),f=c;for(let b=0;b<a.length-1;b++)f=f[a[b]];f[a[a.length-1]]=b,e(c)},V=async()=>{if(d&&f){m(!0),k([]);try{let a=d.quality?.checks||[],b=[];if(a.forEach((a,c)=>{if(!a)return;let d=a.name?.trim?.()||"",e=a.command?.trim?.()||"";d||b.push({path:["quality","checks",String(c),"name"],message:"Name is required"}),e||b.push({path:["quality","checks",String(c),"command"],message:"Command is required"})}),b.length>0){k(b),I.notifications.show({title:"Fix Quality Checks",message:"Each check must include a Name and Command.",color:"red",icon:(0,t.jsx)(ce,{size:16})});return}let c=[],e=(a,b,d=[])=>{for(let f in a){let g=[...d,f];"object"!=typeof a[f]||null===a[f]||Array.isArray(a[f])?a[f]!==b[f]&&c.push({path:g,value:a[f]}):b[f]?e(a[f],b[f],g):c.push({path:g,value:a[f]})}};e(d,f);let h=JSON.stringify(d.quality?.checks||[]),i=JSON.stringify(f.quality?.checks||[]);if(h!==i){for(let a=c.length-1;a>=0;a--)2===c[a].path.length&&"quality"===c[a].path[0]&&"checks"===c[a].path[1]&&c.splice(a,1);c.push({path:["quality","checks"],value:d.quality?.checks||[]})}if(c.length>0){let a=await K.mutateAsync(c);a.success?g(d):(k(a.errors),I.notifications.show({title:"Save Failed",message:a.errors?.[0]?.message||"Validation failed. Please check inputs.",color:"red",icon:(0,t.jsx)(ce,{size:16})}))}}catch(a){console.error("Failed to save settings:",a)}finally{m(!1)}}},W=()=>{f&&(e(f),i(!1),k([]))};return w||!d?(0,t.jsx)(cG.Modal,{opened:a,onClose:b,title:"Settings",size:"lg",children:(0,t.jsx)(B.Text,{children:"Loading settings..."})}):(0,t.jsx)(cG.Modal,{opened:a,onClose:()=>{h?window.confirm("You have unsaved changes. Are you sure you want to close?")&&(W(),b()):b()},title:(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(F,{size:20}),(0,t.jsx)(B.Text,{fw:500,children:"Settings"})]}),size:"xl",closeOnClickOutside:!h,closeOnEscape:!h,children:(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsx)(ve.Alert,{icon:(0,t.jsx)(vP,{size:16}),color:"blue",title:"Restart Required",children:(0,t.jsx)(B.Text,{size:"sm",children:"Some changes (e.g., provider/model, server host/port, git defaults) apply only after you restart the command."})}),j.length>0&&(0,t.jsx)(ve.Alert,{icon:(0,t.jsx)(ce,{size:16}),color:"red",title:"Validation Errors",children:(0,t.jsx)(y.Stack,{gap:"xs",children:j.map((a,b)=>(0,t.jsxs)(B.Text,{size:"sm",children:[a.path.join("."),": ",a.message]},b))})}),(0,t.jsxs)(y.Stack,{gap:"md",children:[(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,mb:"sm",children:"Coding Agent"}),(0,t.jsxs)(z.Group,{gap:"sm",children:[(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Provider",tip:"AI provider"}),data:yX,value:d.agents.codingAgent.provider,size:"sm",onChange:a=>{if(!a)return;let b=y$(a),c=d.agents.codingAgent.model,e=b.find(a=>a.value===c)?c:b[0]?.value;U(["agents","codingAgent"],{...d.agents.codingAgent,provider:a,model:e})}}),(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Model",tip:"AI model used for code implementation"}),data:y$(d.agents.codingAgent.provider),value:d.agents.codingAgent.model,size:"sm",onChange:a=>a&&U(["agents","codingAgent","model"],a)}),(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Max Tokens",tip:"Upper bound on output tokens. Leave blank for provider default (unlimited)."}),min:256,max:1e13,placeholder:"Unlimited (default)",value:d.agents.codingAgent.maxTokens??void 0,size:"sm",onChange:a=>U(["agents","codingAgent","maxTokens"],"number"==typeof a?a:void 0)})]})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,mb:"sm",children:"Review Agent"}),(0,t.jsxs)(z.Group,{gap:"sm",grow:!0,wrap:"wrap",children:[(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Provider",tip:"AI provider"}),data:yX,value:d.agents.judgeAgent.provider,size:"sm",onChange:a=>{if(!a)return;let b=y$(a),c=d.agents.judgeAgent.model,e=b.find(a=>a.value===c)?c:b[0]?.value;U(["agents","judgeAgent"],{...d.agents.judgeAgent,provider:a,model:e})}}),(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Model",tip:"AI model used for code review"}),data:y$(d.agents.judgeAgent.provider),value:d.agents.judgeAgent.model,size:"sm",onChange:a=>a&&U(["agents","judgeAgent","model"],a)}),(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Max Tokens",tip:"Upper bound on output tokens. Leave blank for provider default (unlimited)."}),min:256,max:1e13,placeholder:"Unlimited (default)",value:d.agents.judgeAgent.maxTokens??void 0,size:"sm",onChange:a=>U(["agents","judgeAgent","maxTokens"],"number"==typeof a?a:void 0)}),(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Threshold Score",tip:"Minimum score required to pass AI review (0-100)"}),min:0,max:100,value:d.agents.judgeAgent.reviewThresholdScore,size:"sm",onChange:a=>"number"==typeof a&&U(["agents","judgeAgent","reviewThresholdScore"],a)})]})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsxs)(z.Group,{justify:"space-between",mb:"sm",children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,children:"Provider Configuration"}),(0,t.jsx)(H.Button,{size:"xs",variant:"light",leftSection:(0,t.jsx)(b3,{size:14}),loading:E.isFetching,onClick:()=>{E.refetch(),J.refetch(),x.refetch()},children:"Refresh Detection"})]}),(0,t.jsx)(y.Stack,{gap:"md",children:["claude-code","codex"].map(a=>{let b=E.data?.[a],d=J.data?.providers,e=d?.[a],f=e?.binPath??"",g=n[a]??f,h=g.trim(),i=p===a,j=r===a,k=f.length>0,l=h.length>0&&h!==f&&!i&&!j,m="claude-code"===a?"Claude Code":"Codex CLI";return(0,t.jsxs)(G.Box,{p:"md",style:{border:"1px solid var(--mantine-color-gray-3)",borderRadius:"8px"},children:[(0,t.jsxs)(z.Group,{justify:"space-between",mb:"sm",children:[(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(B.Text,{size:"md",fw:500,children:m}),b?.found?(0,t.jsx)(B.Text,{size:"xs",c:"teal",px:"xs",py:2,style:{backgroundColor:"var(--mantine-color-teal-1)",borderRadius:"4px"},children:"✓ Found"}):(0,t.jsx)(B.Text,{size:"xs",c:"red",px:"xs",py:2,style:{backgroundColor:"var(--mantine-color-red-1)",borderRadius:"4px"},children:"✗ Not Found"})]}),(0,t.jsx)(z.Group,{gap:"xs",children:(0,t.jsx)(H.Button,{size:"xs",variant:"subtle",disabled:!k||j,loading:j,onClick:()=>{T(a)},children:"Reset to Auto"})})]}),(0,t.jsxs)(y.Stack,{gap:"xs",children:[b?.found&&(0,t.jsxs)(z.Group,{gap:"sm",children:[(0,t.jsx)(B.Text,{size:"sm",c:"dimmed",children:"Path:"}),(0,t.jsx)(B.Text,{size:"sm",ff:"monospace",children:b.path}),b.method&&(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["(",b.method,")"]})]}),b?.version&&(0,t.jsxs)(z.Group,{gap:"sm",children:[(0,t.jsx)(B.Text,{size:"sm",c:"dimmed",children:"Version:"}),(0,t.jsx)(B.Text,{size:"sm",children:b.version})]}),b?.error&&(0,t.jsx)(B.Text,{size:"sm",c:"red",children:b.error}),(0,t.jsxs)(z.Group,{align:"flex-end",gap:"xs",wrap:"nowrap",children:[(0,t.jsx)(cu.TextInput,{style:{flex:1},label:(0,t.jsx)(c,{label:"Custom Binary Path",tip:"Override auto-detection with a specific path."}),placeholder:b?.found?`Auto-detected: ${b.path}`:"Enter path to binary",value:g,size:"sm",disabled:i||j,onChange:b=>{R(a,b.target.value)},rightSection:g?(0,t.jsx)(C.ActionIcon,{variant:"subtle",color:"gray",size:"sm",onClick:()=>{R(a,"")},disabled:i||j,children:(0,t.jsx)(ce,{size:14})}):null,rightSectionPointerEvents:"auto"}),(0,t.jsx)(H.Button,{size:"xs",loading:i,disabled:!l,onClick:()=>{S(a)},children:"Update"})]}),!b?.found&&(0,t.jsxs)(B.Text,{size:"sm",c:"dimmed",children:["Not installed?"," ",(0,t.jsxs)(yW(),{href:"claude-code"===a?"https://docs.anthropic.com/en/docs/claude-code":"https://github.com/openai/codex",target:"_blank",children:["Install ",m]})]})]})]},a)})}),J.data&&(0,t.jsx)(G.Box,{mt:"md",p:"sm",style:{backgroundColor:"var(--mantine-color-gray-0)",borderRadius:"4px"},children:(0,t.jsxs)(B.Text,{size:"xs",c:"dimmed",children:["Local config: ",J.data.exists?"✓":"✗"," ",J.data.path]})})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,mb:"sm",children:"Default Prompts"}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsx)(yS.Textarea,{label:(0,t.jsx)(c,{label:"System Prompt",tip:"Default system prompt for AI agents"}),rows:4,value:d.agents.defaultPrompts.systemPrompt,size:"sm",onChange:a=>U(["agents","defaultPrompts","systemPrompt"],a.target.value)}),(0,t.jsx)(yS.Textarea,{label:(0,t.jsx)(c,{label:"Task Prompt",tip:"Default prompt for task execution"}),rows:3,value:d.agents.defaultPrompts.taskPrompt,size:"sm",onChange:a=>U(["agents","defaultPrompts","taskPrompt"],a.target.value)})]})]})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,children:"Vibing Automation"}),(0,t.jsx)(B.Text,{size:"sm",c:"dimmed",children:"this is the default configuration, you can change it for each Vibing."}),(0,t.jsxs)(z.Group,{gap:"sm",wrap:"wrap",children:[(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"Auto Quality Checks",tip:"Automatically run quality checks after implementation"}),checked:d.defaultWorkflow.autoQualityChecks,size:"sm",onChange:a=>U(["defaultWorkflow","autoQualityChecks"],a.target.checked)}),(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"Require Human Approval",tip:"Require manual approval before merging changes"}),checked:d.defaultWorkflow.requireHumanApproval,size:"sm",onChange:a=>U(["defaultWorkflow","requireHumanApproval"],a.target.checked)}),(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"AI Code Review",tip:"Enable AI-powered code review before human review"}),checked:d.defaultWorkflow.aiCodeReview,size:"sm",onChange:a=>U(["defaultWorkflow","aiCodeReview"],a.target.checked)}),(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"Auto Commit",tip:"Automatically commit successful implementations"}),checked:d.defaultWorkflow.autoCommit,size:"sm",onChange:a=>U(["defaultWorkflow","autoCommit"],a.target.checked)})]}),(0,t.jsx)(z.Group,{gap:"sm",grow:!0,wrap:"wrap",children:(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Max Implementation Attempts",tip:"Maximum retry attempts for failed implementations"}),min:1,max:10,value:d.defaultWorkflow.maxImplementationAttempts,size:"sm",onChange:a=>"number"==typeof a&&U(["defaultWorkflow","maxImplementationAttempts"],a)})})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,children:"Quality Checks"}),(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(H.Button,{size:"xs",variant:"light",leftSection:(0,t.jsx)(yU,{size:14}),loading:M.isPending,onClick:()=>M.mutate(),children:"Detect (AI)"}),(0,t.jsx)(H.Button,{size:"xs",variant:"default",onClick:()=>{let a=JSON.parse(JSON.stringify(d));a.quality=a.quality||{checks:[]},a.quality.checks=[...a.quality.checks||[],{name:"",command:"",args:[],timeout:3e4,enabled:!0}],e(a),i(!0)},children:"Add Check"})]})]}),(0,t.jsx)(B.Text,{size:"sm",c:"dimmed",children:"Configure fast, local quality checks. Empty means validation will be skipped."}),(0,t.jsxs)(y.Stack,{gap:"xs",children:[0===(d.quality?.checks||[]).length&&(0,t.jsx)(B.Text,{size:"sm",c:"dimmed",children:"No checks configured."}),(d.quality?.checks||[]).map((a,b)=>(0,t.jsxs)(z.Group,{gap:"xs",align:"end",wrap:"wrap",children:[(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Name",tip:"Short label for this check"}),value:a.name||"",size:"sm",style:{minWidth:160},onChange:a=>{let c=JSON.parse(JSON.stringify(d));c.quality.checks[b].name=a.target.value,e(c),i(!0)}}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Command",tip:"Executable command (e.g., npm, yarn, cargo)"}),value:a.command||"",size:"sm",style:{minWidth:180},onChange:a=>{let c=JSON.parse(JSON.stringify(d));c.quality.checks[b].command=a.target.value,e(c),i(!0)}}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Args",tip:"Space-separated args (stored as array)"}),placeholder:"e.g., run lint",value:(a.args||[]).join(" "),size:"sm",style:{minWidth:220},onChange:a=>{let c=a.target.value.trim().length?a.target.value.split(/\s+/):[],f=JSON.parse(JSON.stringify(d));f.quality.checks[b].args=c,e(f),i(!0)}}),(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Timeout (ms)",tip:"1s–600000ms"}),min:1e3,max:6e5,value:a.timeout??3e4,size:"sm",onChange:a=>{if("number"!=typeof a)return;let c=JSON.parse(JSON.stringify(d));c.quality.checks[b].timeout=Math.min(6e5,Math.max(1e3,a)),e(c),i(!0)}}),(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"Enabled",tip:"Include in validation"}),checked:!1!==a.enabled,onChange:a=>{let c=JSON.parse(JSON.stringify(d));c.quality.checks[b].enabled=a.target.checked,e(c),i(!0)}}),(0,t.jsx)(H.Button,{size:"xs",color:"red",variant:"subtle",onClick:()=>{let a=JSON.parse(JSON.stringify(d));a.quality.checks.splice(b,1),e(a),i(!0)},children:"Remove"})]},`qc-${b}`))]})]}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,children:"Development Environment"}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Vibe Directory",tip:"Directory for Vibeman configuration and data. Leave blank for default (.vibeman)."}),placeholder:".vibeman (default)",value:d.development.vibeDir??"",size:"sm",onChange:a=>U(["development","vibeDir"],a.target.value||void 0)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Default Git Branch",tip:"Default branch for new features and merging"}),value:d.development.git.defaultBranch,size:"sm",onChange:a=>U(["development","git","defaultBranch"],a.target.value)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Worktree Path",tip:"Base path for Git worktrees. Leave blank for default (../)."}),placeholder:"../ (default)",value:d.development.git.worktreePath??"",size:"sm",onChange:a=>U(["development","git","worktreePath"],a.target.value||void 0)}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)("div",{children:[(0,t.jsx)(B.Text,{size:"md",fw:500,mb:"sm",children:"Code Editor"}),(0,t.jsxs)(z.Group,{gap:"sm",grow:!0,wrap:"wrap",children:[(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Editor Type",tip:"Select your preferred code editor"}),data:y_,value:d.development.editor?.type??"vscode",size:"sm",onChange:a=>U(["development","editor","type"],a)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Command",tip:"Executable command for the editor (e.g., 'code', 'cursor', 'vim')"}),placeholder:"Auto-detect based on type",value:d.development.editor?.command??"",size:"sm",onChange:a=>U(["development","editor","command"],a.target.value||void 0)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Display Name",tip:"Human-readable name for the editor"}),placeholder:"Auto-detect based on type",value:d.development.editor?.name??"",size:"sm",onChange:a=>U(["development","editor","name"],a.target.value||void 0)})]}),A.data&&(0,t.jsxs)(z.Group,{mt:"xs",gap:"xs",children:[(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:"Quick presets:"}),Object.entries(A.data).map(([a,b])=>(0,t.jsx)(H.Button,{size:"xs",variant:"light",onClick:()=>N.mutate({presetName:a}),loading:N.isPending,children:b?.name||a},a))]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(B.Text,{size:"md",fw:500,mb:"sm",children:"Terminal"}),(0,t.jsxs)(z.Group,{gap:"sm",grow:!0,wrap:"wrap",children:[(0,t.jsx)(cw.Select,{label:(0,t.jsx)(c,{label:"Terminal Type",tip:"Select your preferred terminal"}),data:y0,value:d.development.terminal?.type??"system",size:"sm",onChange:a=>U(["development","terminal","type"],a)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Command",tip:"Executable command for the terminal"}),placeholder:"Auto-detect based on type",value:d.development.terminal?.command??"",size:"sm",onChange:a=>U(["development","terminal","command"],a.target.value||void 0)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Display Name",tip:"Human-readable name for the terminal"}),placeholder:"Auto-detect based on type",value:d.development.terminal?.name??"",size:"sm",onChange:a=>U(["development","terminal","name"],a.target.value||void 0)})]}),D.data&&(0,t.jsxs)(z.Group,{mt:"xs",gap:"xs",children:[(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:"Quick presets:"}),Object.entries(D.data).map(([a,b])=>(0,t.jsx)(H.Button,{size:"xs",variant:"light",onClick:()=>O.mutate({presetName:a}),loading:O.isPending,children:b?.name||a},a))]})]})]})]}),(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsx)(B.Text,{size:"lg",fw:500,children:"Server Configuration"}),(0,t.jsxs)(z.Group,{gap:"sm",grow:!0,wrap:"wrap",children:[(0,t.jsx)(yR.NumberInput,{label:(0,t.jsx)(c,{label:"Port",tip:"Server port (requires restart)"}),min:3e3,max:65535,value:d.server.port,size:"sm",onChange:a=>"number"==typeof a&&U(["server","port"],a)}),(0,t.jsx)(cu.TextInput,{label:(0,t.jsx)(c,{label:"Host",tip:"Server host address (requires restart)"}),value:d.server.host,size:"sm",onChange:a=>U(["server","host"],a.target.value)}),(0,t.jsx)(yT.Switch,{label:(0,t.jsx)(c,{label:"Auto Open Browser",tip:"Automatically open browser when server starts"}),checked:d.server.autoOpenBrowser,size:"sm",onChange:a=>U(["server","autoOpenBrowser"],a.target.checked)})]})]})]}),(0,t.jsxs)(G.Box,{style:{position:"sticky",bottom:0,background:"var(--mantine-color-body)"},children:[(0,t.jsx)(b0.Divider,{}),(0,t.jsxs)(z.Group,{justify:"space-between",style:{padding:"8px 0"},children:[(0,t.jsx)(z.Group,{children:(0,t.jsx)(H.Button,{variant:"light",color:"red",leftSection:(0,t.jsx)(b3,{size:16}),onClick:()=>{L.mutate()},loading:L.isPending,children:"Reset to Defaults"})}),(0,t.jsxs)(z.Group,{children:[(0,t.jsx)(H.Button,{variant:"default",onClick:W,disabled:!h,children:"Cancel"}),(0,t.jsx)(H.Button,{onClick:V,loading:l,disabled:!h,leftSection:(0,t.jsx)(vl,{size:16}),children:"Save Changes"})]})]})]})]})})}var y2=c(68591),y3=c(49311),y4=E("outline","copy","IconCopy",[["path",{d:"M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z",key:"svg-0"}],["path",{d:"M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1",key:"svg-1"}]]),y5=E("outline","folder","IconFolder",[["path",{d:"M5 4h4l3 3h7a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-11a2 2 0 0 1 2 -2",key:"svg-0"}]]),y6=E("outline","brand-vscode","IconBrandVscode",[["path",{d:"M16 3v18l4 -2.5v-13z",key:"svg-0"}],["path",{d:"M9.165 13.903l-4.165 3.597l-2 -1l4.333 -4.5m1.735 -1.802l6.932 -7.198v5l-4.795 4.141",key:"svg-1"}],["path",{d:"M16 16.5l-11 -10l-2 1l13 13.5",key:"svg-2"}]]),y7=E("outline","terminal-2","IconTerminal2",[["path",{d:"M8 9l3 3l-3 3",key:"svg-0"}],["path",{d:"M13 15l3 0",key:"svg-1"}],["path",{d:"M3 4m0 2a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z",key:"svg-2"}]]),y8=E("outline","list-details","IconListDetails",[["path",{d:"M13 5h8",key:"svg-0"}],["path",{d:"M13 9h5",key:"svg-1"}],["path",{d:"M13 15h8",key:"svg-2"}],["path",{d:"M13 19h5",key:"svg-3"}],["path",{d:"M3 4m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z",key:"svg-4"}],["path",{d:"M3 14m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z",key:"svg-5"}]]);function y9({opened:a,onClose:b}){let{data:c,isLoading:d}=cc(),[e,f]=(0,u.useState)(null),[g,h]=(0,u.useState)(new Set),i=(0,cb.jE)(),j=bX.i.openInEditor.useMutation(),k=bX.i.openInTerminal?.useMutation?.()||{mutateAsync:async()=>({success:!1}),isPending:!1},l=bX.i.cleanupWorktree.useMutation({onSuccess:(a,b)=>{let c=b.isConnectedToTask?b.taskId:b.worktreePath;h(a=>{let b=new Set(a);return b.delete(c),b}),I.notifications.show({title:"Success",message:"Worktree cleaned up successfully",color:"green"}),i.invalidateQueries({queryKey:[["listWorktrees"]]})},onError:(a,b)=>{let c=b.isConnectedToTask?b.taskId:b.worktreePath;h(a=>{let b=new Set(a);return b.delete(c),b}),I.notifications.show({title:"Error",message:a.message,color:"red"})}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(cG.Modal,{opened:a,onClose:b,title:(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(ca,{size:20}),(0,t.jsx)(B.Text,{fw:600,children:"Git Worktrees"})]}),size:"lg",centered:!0,children:(0,t.jsx)(y.Stack,{gap:"md",children:d?(0,t.jsxs)(z.Group,{justify:"center",p:"xl",children:[(0,t.jsx)(vL.Loader,{size:"md"}),(0,t.jsx)(B.Text,{c:"dimmed",children:"Loading worktrees..."})]}):c&&Array.isArray(c)&&0!==c.length?(0,t.jsxs)(y.Stack,{gap:"sm",children:[(0,t.jsxs)(B.Text,{size:"sm",fw:500,c:"dimmed",children:["Git Worktrees (",c?.length||0,")"]}),Array.isArray(c)&&c.map(a=>(0,t.jsx)(b$.Card,{withBorder:!0,p:"md",radius:"sm",children:(0,t.jsx)(y.Stack,{gap:"xs",children:(0,t.jsxs)(z.Group,{justify:"space-between",align:"flex-start",children:[(0,t.jsxs)("div",{style:{flex:1},children:[(0,t.jsxs)(z.Group,{gap:"xs",mb:"xs",children:[(0,t.jsx)(B.Text,{fw:600,size:"sm",children:a.taskId}),!a.isConnectedToTask&&(0,t.jsx)(bZ.Badge,{size:"xs",color:"orange",variant:"outline",children:"Unconnected"})]}),(0,t.jsxs)(z.Group,{gap:"xs",mb:"xs",children:[(0,t.jsx)(ca,{size:14}),(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",children:a.branchName}),(0,t.jsx)(y2.CopyButton,{value:a.branchName,children:({copied:a,copy:b})=>(0,t.jsx)(b_.Tooltip,{label:a?"Copied":"Copy branch name",withArrow:!0,position:"top",children:(0,t.jsx)(C.ActionIcon,{color:a?"teal":"gray",variant:"subtle",size:"xs",onClick:b,children:a?(0,t.jsx)(vl,{style:{width:(0,y3.D)(12)}}):(0,t.jsx)(y4,{style:{width:(0,y3.D)(12)}})})})})]}),(0,t.jsxs)(z.Group,{gap:"xs",children:[(0,t.jsx)(y5,{size:14}),(0,t.jsx)(B.Text,{size:"xs",c:"dimmed",truncate:!0,children:a.path}),(0,t.jsx)(y2.CopyButton,{value:a.path,children:({copied:a,copy:b})=>(0,t.jsx)(b_.Tooltip,{label:a?"Copied":"Copy path",withArrow:!0,position:"top",children:(0,t.jsx)(C.ActionIcon,{color:a?"teal":"gray",variant:"subtle",size:"xs",onClick:b,children:a?(0,t.jsx)(vl,{style:{width:(0,y3.D)(12)}}):(0,t.jsx)(y4,{style:{width:(0,y3.D)(12)}})})})})]})]}),(0,t.jsxs)(z.Group,{gap:"xs",align:"flex-start",children:[(0,t.jsx)(b_.Tooltip,{label:"Open in VS Code",withArrow:!0,children:(0,t.jsx)(C.ActionIcon,{variant:"light",size:"sm",onClick:async()=>{try{await j.mutateAsync({worktreePath:a.path})}catch(a){console.error("Failed to open editor:",a)}},children:(0,t.jsx)(y6,{size:14})})}),(0,t.jsx)(b_.Tooltip,{label:"Open in Terminal",withArrow:!0,children:(0,t.jsx)(C.ActionIcon,{variant:"light",size:"sm",onClick:async()=>{try{await k.mutateAsync({worktreePath:a.path})}catch(a){console.error("Failed to open Terminal:",a)}},children:(0,t.jsx)(y7,{size:14})})}),a.isConnectedToTask&&(0,t.jsx)(b_.Tooltip,{label:"View Task Details",withArrow:!0,children:(0,t.jsx)(C.ActionIcon,{variant:"light",size:"sm",onClick:()=>f(a.taskId),children:(0,t.jsx)(y8,{size:14})})}),(0,t.jsx)(b_.Tooltip,{label:"Remove worktree (branch + worktree)",withArrow:!0,children:(0,t.jsx)(C.ActionIcon,{variant:"light",color:"red",size:"sm",loading:g.has(a.isConnectedToTask?a.taskId:a.path),onClick:()=>{if(confirm("Are you sure you want to remove this worktree and its branch? This cannot be undone.")){let b=a.isConnectedToTask?a.taskId:a.path;h(a=>new Set(a).add(b)),l.mutate({taskId:a.isConnectedToTask?a.taskId:void 0,worktreePath:a.path,branchName:a.branchName,isConnectedToTask:a.isConnectedToTask,force:!0})}},children:(0,t.jsx)(cL,{size:14})})})]})]})})},a.taskId))]}):(0,t.jsx)(ve.Alert,{icon:(0,t.jsx)(vP,{size:16}),title:"No worktrees found",variant:"light",color:"gray",children:(0,t.jsx)(B.Text,{size:"sm",children:"No git worktrees are currently active."})})})}),e&&(0,t.jsx)(yQ,{mode:"edit",taskId:e,opened:!!e,onClose:()=>f(null)})]})}function za(){let[a,b]=(0,u.useState)(!1),{data:c}=cc();return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(H.Button,{variant:"light",leftSection:(0,t.jsx)(ca,{size:16}),onClick:()=>b(!0),rightSection:c&&c.length>0?(0,t.jsx)(bZ.Badge,{size:"xs",variant:"filled",color:"blue",children:c.length}):null,children:"Worktrees"}),(0,t.jsx)(y9,{opened:a,onClose:()=>b(!1)})]})}function zb(){let[a,b]=(0,u.useState)(null),[c,d]=(0,u.useState)(!1),[e,f]=(0,u.useState)(),[g,h]=(0,u.useState)(!1),i=(0,cn.useRouter)(),j=(0,cn.useSearchParams)(),k=(0,cn.usePathname)()??"/";return(0,u.useMemo)(()=>j?.get("task")??null,[j]),(0,t.jsxs)(x.Container,{size:"xl",py:"xl",children:[(0,t.jsxs)(y.Stack,{gap:"lg",children:[(0,t.jsxs)(z.Group,{justify:"space-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(A.Title,{order:1,children:"Vibeman Dashboard"}),(0,t.jsx)(B.Text,{c:"dimmed",children:"Git-native task management with AI assistance"})]}),(0,t.jsxs)(z.Group,{gap:"sm",children:[(0,t.jsx)(za,{}),(0,t.jsx)(C.ActionIcon,{variant:"light",size:"lg",onClick:()=>h(!0),title:"Settings",children:(0,t.jsx)(F,{size:18})})]})]}),(0,t.jsx)(cF,{onTaskClick:a=>{b(a.id);let c=cN(k,j,"task",a.id);i.push(c,{scroll:!1})},onCreateTask:a=>{f(a),d(!0)}})]}),(0,t.jsx)(yQ,{mode:"edit",taskId:a,opened:!!a,onClose:()=>{b(null);let a=new URLSearchParams(j?.toString?.()||"");a.delete("task"),a.delete("tab");let c=a.toString(),d=c?`${k}?${c}`:k;i.push(d,{scroll:!1})}}),(0,t.jsx)(yQ,{mode:"create",opened:c,onClose:()=>{d(!1),f(void 0)},defaultStatus:e}),(0,t.jsx)(y1,{opened:g,onClose:()=>h(!1)})]})}function zc(){return(0,t.jsx)(u.Suspense,{fallback:null,children:(0,t.jsx)(zb,{})})}},99500:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{createMutableActionQueue:function(){return o},dispatchNavigateAction:function(){return q},dispatchTraverseAction:function(){return r},getCurrentAppRouterState:function(){return p},publicAppRouterInstance:function(){return s}});let d=c(13136),e=c(25248),f=c(31768),g=c(39370);c(68459);let h=c(46259),i=c(61725),j=c(25918),k=c(37446),l=c(37384);function m(a,b){null!==a.pending&&(a.pending=a.pending.next,null!==a.pending?n({actionQueue:a,action:a.pending,setState:b}):a.needsRefresh&&(a.needsRefresh=!1,a.dispatch({type:d.ACTION_REFRESH,origin:window.location.origin},b)))}async function n(a){let{actionQueue:b,action:c,setState:d}=a,e=b.state;b.pending=c;let f=c.payload,h=b.action(e,f);function i(a){c.discarded||(b.state=a,m(b,d),c.resolve(a))}(0,g.isThenable)(h)?h.then(i,a=>{m(b,d),c.reject(a)}):i(h)}function o(a,b){let c={state:a,dispatch:(a,b)=>(function(a,b,c){let e={resolve:c,reject:()=>{}};if(b.type!==d.ACTION_RESTORE){let a=new Promise((a,b)=>{e={resolve:a,reject:b}});(0,f.startTransition)(()=>{c(a)})}let g={payload:b,next:null,resolve:e.resolve,reject:e.reject};null===a.pending?(a.last=g,n({actionQueue:a,action:g,setState:c})):b.type===d.ACTION_NAVIGATE||b.type===d.ACTION_RESTORE?(a.pending.discarded=!0,g.next=a.pending.next,a.pending.payload.type===d.ACTION_SERVER_ACTION&&(a.needsRefresh=!0),n({actionQueue:a,action:g,setState:c})):(null!==a.last&&(a.last.next=g),a.last=g)})(c,a,b),action:async(a,b)=>(0,e.reducer)(a,b),pending:null,last:null,onRouterTransitionStart:null!==b&&"function"==typeof b.onRouterTransitionStart?b.onRouterTransitionStart:null};return c}function p(){return null}function q(a,b,c,e){let f=new URL((0,i.addBasePath)(a),location.href);(0,l.setLinkForCurrentNavigation)(e);(0,h.dispatchAppRouterAction)({type:d.ACTION_NAVIGATE,url:f,isExternalUrl:(0,j.isExternalURL)(f),locationSearch:location.search,shouldScroll:c,navigateType:b,allowAliasing:!0})}function r(a,b){(0,h.dispatchAppRouterAction)({type:d.ACTION_RESTORE,url:new URL(a),tree:b})}let s={back:()=>window.history.back(),forward:()=>window.history.forward(),prefetch:(a,b)=>{let c=function(){throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0})}(),e=(0,j.createPrefetchURL)(a);if(null!==e){var f;(0,k.prefetchReducer)(c.state,{type:d.ACTION_PREFETCH,url:e,kind:null!=(f=null==b?void 0:b.kind)?f:d.PrefetchKind.FULL})}},replace:(a,b)=>{(0,f.startTransition)(()=>{var c;q(a,"replace",null==(c=null==b?void 0:b.scroll)||c,null)})},push:(a,b)=>{(0,f.startTransition)(()=>{var c;q(a,"push",null==(c=null==b?void 0:b.scroll)||c,null)})},refresh:()=>{(0,f.startTransition)(()=>{(0,h.dispatchAppRouterAction)({type:d.ACTION_REFRESH,origin:window.location.origin})})},hmrRefresh:()=>{throw Object.defineProperty(Error("hmrRefresh can only be used in development mode. Please use refresh instead."),"__NEXT_ERROR_CODE",{value:"E485",enumerable:!1,configurable:!0})}};("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},99735:(a,b,c)=>{"use strict";var d=c(21171);a.exports={nextElementSibling:{get:function(){if(this.parentNode){for(var a=this.nextSibling;null!==a;a=a.nextSibling)if(a.nodeType===d.ELEMENT_NODE)return a}return null}},previousElementSibling:{get:function(){if(this.parentNode){for(var a=this.previousSibling;null!==a;a=a.previousSibling)if(a.nodeType===d.ELEMENT_NODE)return a}return null}}}}};var b=require("../webpack-runtime.js");b.C(a);var c=b.X(0,[635,576,458],()=>b(b.s=97289));module.exports=c})();