@shipit-ai/cli 1.166.0 → 1.166.1

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 (163) hide show
  1. package/dist/tsconfig.build.tsbuildinfo +1 -1
  2. package/package.json +4 -2
  3. package/web/.next/BUILD_ID +1 -1
  4. package/web/.next/build-manifest.json +3 -3
  5. package/web/.next/fallback-build-manifest.json +3 -3
  6. package/web/.next/prerender-manifest.json +3 -3
  7. package/web/.next/required-server-files.js +2 -2
  8. package/web/.next/required-server-files.json +2 -2
  9. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +29 -29
  10. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  11. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  12. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +27 -27
  13. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  14. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  15. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +30 -30
  16. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  17. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  18. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +37 -37
  19. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  20. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  21. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +37 -37
  22. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  23. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  24. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  25. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  26. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  27. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  28. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  29. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  30. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +27 -27
  31. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  32. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  33. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +30 -30
  34. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  35. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  36. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +37 -37
  37. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  38. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  39. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +37 -37
  40. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  41. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  42. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +27 -27
  43. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  44. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  45. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  46. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  47. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  48. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  49. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  50. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  51. package/web/.next/server/app/_global-error.html +1 -1
  52. package/web/.next/server/app/_global-error.rsc +1 -1
  53. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  54. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  55. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  56. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  57. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  58. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +6 -6
  59. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  60. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  61. package/web/.next/server/app/settings/page/server-reference-manifest.json +11 -11
  62. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  63. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  64. package/web/.next/server/app/skills/page/server-reference-manifest.json +11 -11
  65. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  66. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  67. package/web/.next/server/app/tools/page/server-reference-manifest.json +11 -11
  68. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  69. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  70. package/web/.next/server/app/version/page/server-reference-manifest.json +6 -6
  71. package/web/.next/server/app/version/page.js.nft.json +1 -1
  72. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  73. package/web/.next/server/chunks/[root-of-the-server]__0tb~wwk._.js +1 -1
  74. package/web/.next/server/chunks/ssr/0j.8_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_00~eq5i.js +1 -1
  75. package/web/.next/server/chunks/ssr/0j.8_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_00~eq5i.js.map +1 -1
  76. package/web/.next/server/chunks/ssr/0j.8_web__next-internal_server_app_(dashboard)_@drawer_chat_page_actions_0979_c..js +1 -1
  77. package/web/.next/server/chunks/ssr/0j.8_web__next-internal_server_app_(dashboard)_@drawer_chat_page_actions_0979_c..js.map +1 -1
  78. package/web/.next/server/chunks/ssr/0j.8_web__next-internal_server_app_(dashboard)_chat_page_actions_0dqll_1.js +1 -1
  79. package/web/.next/server/chunks/ssr/0j.8_web__next-internal_server_app_(dashboard)_chat_page_actions_0dqll_1.js.map +1 -1
  80. package/web/.next/server/chunks/ssr/0j.8_web_components_common_control-center-drawer_create-drawer-client_tsx_0g70fc5._.js +1 -1
  81. package/web/.next/server/chunks/ssr/0j.8_web_components_common_control-center-drawer_create-drawer-client_tsx_0g70fc5._.js.map +1 -1
  82. package/web/.next/server/chunks/ssr/0j.8_web_components_common_control-center-drawer_feature-drawer-client_tsx_104cna.._.js +2 -2
  83. package/web/.next/server/chunks/ssr/0j.8_web_components_common_control-center-drawer_feature-drawer-client_tsx_104cna.._.js.map +1 -1
  84. package/web/.next/server/chunks/ssr/0ukq_presentation_web_components_features_settings_settings-page-client_tsx_0j1uius._.js +1 -1
  85. package/web/.next/server/chunks/ssr/0ukq_presentation_web_components_features_settings_settings-page-client_tsx_0j1uius._.js.map +1 -1
  86. package/web/.next/server/chunks/ssr/11y9_components_common_control-center-drawer_repository-drawer-client_tsx_09z.znp._.js +1 -1
  87. package/web/.next/server/chunks/ssr/11y9_components_common_control-center-drawer_repository-drawer-client_tsx_09z.znp._.js.map +1 -1
  88. package/web/.next/server/chunks/ssr/[root-of-the-server]__045sv4b._.js +1 -1
  89. package/web/.next/server/chunks/ssr/[root-of-the-server]__045sv4b._.js.map +1 -1
  90. package/web/.next/server/chunks/ssr/[root-of-the-server]__0d_0_fp._.js +1 -1
  91. package/web/.next/server/chunks/ssr/[root-of-the-server]__0d_0_fp._.js.map +1 -1
  92. package/web/.next/server/chunks/ssr/[root-of-the-server]__0l4d7e.._.js +1 -1
  93. package/web/.next/server/chunks/ssr/[root-of-the-server]__0l4d7e.._.js.map +1 -1
  94. package/web/.next/server/chunks/ssr/[root-of-the-server]__0o3qggc._.js +1 -1
  95. package/web/.next/server/chunks/ssr/[root-of-the-server]__0o3qggc._.js.map +1 -1
  96. package/web/.next/server/chunks/ssr/[root-of-the-server]__0r32z03._.js +1 -1
  97. package/web/.next/server/chunks/ssr/[root-of-the-server]__0r32z03._.js.map +1 -1
  98. package/web/.next/server/chunks/ssr/[root-of-the-server]__0rv1gci._.js +1 -1
  99. package/web/.next/server/chunks/ssr/[root-of-the-server]__12g8h3_._.js +1 -1
  100. package/web/.next/server/chunks/ssr/_01mq~sm._.js +1 -1
  101. package/web/.next/server/chunks/ssr/_01mq~sm._.js.map +1 -1
  102. package/web/.next/server/chunks/ssr/_01sesw0._.js +1 -1
  103. package/web/.next/server/chunks/ssr/_01sesw0._.js.map +1 -1
  104. package/web/.next/server/chunks/ssr/{_0r~xv6k._.js → _0a-ddx-._.js} +2 -2
  105. package/web/.next/server/chunks/ssr/{_0r~xv6k._.js.map → _0a-ddx-._.js.map} +1 -1
  106. package/web/.next/server/chunks/ssr/{_09di2m~._.js → _0e4npv~._.js} +2 -2
  107. package/web/.next/server/chunks/ssr/{_09di2m~._.js.map → _0e4npv~._.js.map} +1 -1
  108. package/web/.next/server/chunks/ssr/_0jpbsh_._.js +1 -1
  109. package/web/.next/server/chunks/ssr/{_12104w0._.js → _0nvrqsj._.js} +2 -2
  110. package/web/.next/server/chunks/ssr/{_12104w0._.js.map → _0nvrqsj._.js.map} +1 -1
  111. package/web/.next/server/chunks/ssr/_0vyfc4b._.js +1 -1
  112. package/web/.next/server/chunks/ssr/_0vyfc4b._.js.map +1 -1
  113. package/web/.next/server/chunks/ssr/_0w-_hww._.js +1 -1
  114. package/web/.next/server/chunks/ssr/_0w-_hww._.js.map +1 -1
  115. package/web/.next/server/chunks/ssr/_0~7lwu_._.js +1 -1
  116. package/web/.next/server/chunks/ssr/_0~7lwu_._.js.map +1 -1
  117. package/web/.next/server/chunks/ssr/_109n-y4._.js +1 -1
  118. package/web/.next/server/chunks/ssr/src_presentation_web_0.e4~xc._.js +1 -1
  119. package/web/.next/server/chunks/ssr/src_presentation_web_0.e4~xc._.js.map +1 -1
  120. package/web/.next/server/chunks/ssr/src_presentation_web_00dvh.m._.js +1 -1
  121. package/web/.next/server/chunks/ssr/src_presentation_web_00dvh.m._.js.map +1 -1
  122. package/web/.next/server/chunks/ssr/src_presentation_web_06b6~lt._.js +2 -2
  123. package/web/.next/server/chunks/ssr/src_presentation_web_06b6~lt._.js.map +1 -1
  124. package/web/.next/server/chunks/ssr/src_presentation_web_08fy2mf._.js +1 -1
  125. package/web/.next/server/chunks/ssr/src_presentation_web_08fy2mf._.js.map +1 -1
  126. package/web/.next/server/chunks/ssr/src_presentation_web_0f~udu1._.js +1 -1
  127. package/web/.next/server/chunks/ssr/src_presentation_web_0f~udu1._.js.map +1 -1
  128. package/web/.next/server/chunks/ssr/src_presentation_web_0qys821._.js +2 -2
  129. package/web/.next/server/chunks/ssr/src_presentation_web_0qys821._.js.map +1 -1
  130. package/web/.next/server/chunks/ssr/src_presentation_web_0q~dt0o._.js +1 -1
  131. package/web/.next/server/chunks/ssr/src_presentation_web_0q~dt0o._.js.map +1 -1
  132. package/web/.next/server/chunks/ssr/src_presentation_web_11jrkxt._.js +1 -1
  133. package/web/.next/server/chunks/ssr/src_presentation_web_11jrkxt._.js.map +1 -1
  134. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_1199d3x.js +1 -1
  135. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_1199d3x.js.map +1 -1
  136. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app__not-found_page_actions_0m2jqxx.js +1 -1
  137. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app__not-found_page_actions_0m2jqxx.js.map +1 -1
  138. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_version_page_actions_0krkh_0.js +1 -1
  139. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_version_page_actions_0krkh_0.js.map +1 -1
  140. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_load-settings_ts_0b8f3pf._.js +1 -1
  141. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_0w2wqvu._.js +1 -1
  142. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_0l3oxx9._.js +1 -1
  143. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_0l3oxx9._.js.map +1 -1
  144. package/web/.next/server/middleware-build-manifest.js +3 -3
  145. package/web/.next/server/pages/500.html +1 -1
  146. package/web/.next/server/server-reference-manifest.js +1 -1
  147. package/web/.next/server/server-reference-manifest.json +49 -49
  148. package/web/.next/static/chunks/{13ryk8qc9y3qu.js → 00dg6gti40.3i.js} +1 -1
  149. package/web/.next/static/chunks/{0ntps8p7wo1re.js → 09dqgshddfxff.js} +1 -1
  150. package/web/.next/static/chunks/{121l3o3vd~hvn.js → 0_--5mgqukm__.js} +1 -1
  151. package/web/.next/static/chunks/{0rfap2l5xz_-p.js → 0_c5~n__lz4ks.js} +1 -1
  152. package/web/.next/static/chunks/{0fmbl3o08a~-h.js → 0awttldb-.7m..js} +1 -1
  153. package/web/.next/static/chunks/{16jcg65-2mxc..js → 0d-2jp.f._l2e.js} +1 -1
  154. package/web/.next/static/chunks/{01hf_nf2ge.tn.js → 0ist7260j__0m.js} +2 -2
  155. package/web/.next/static/chunks/{0b_anwzlzr9p7.js → 0njrgvmyafrod.js} +1 -1
  156. package/web/.next/static/chunks/{0b01fd0lkhnzf.js → 0nk2r-18.7g6r.js} +1 -1
  157. package/web/.next/static/chunks/{00uywouqbytc0.js → 0ntgq3d_.m5el.js} +3 -3
  158. package/web/.next/static/chunks/{0rhoh5o1y7grf.js → 0t.pzrmeoq6th.js} +1 -1
  159. package/web/.next/static/chunks/{0sywjtf8m0_fb.js → 0t8zwgaz.d1s5.js} +1 -1
  160. package/web/.next/static/chunks/{0tutcr7trd_7d.js → 14g1l3~6i5251.js} +2 -2
  161. /package/web/.next/static/{21GZVGanhwKlq9p5dtTCB → ZpPnD_b687G9xVr2nzrds}/_buildManifest.js +0 -0
  162. /package/web/.next/static/{21GZVGanhwKlq9p5dtTCB → ZpPnD_b687G9xVr2nzrds}/_clientMiddlewareManifest.js +0 -0
  163. /package/web/.next/static/{21GZVGanhwKlq9p5dtTCB → ZpPnD_b687G9xVr2nzrds}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[93995,a=>{"use strict";var b=a.i(53083),c=a.i(11321),d=a.i(40674),e=a.i(52313),f=a.i(6120);let g=(0,f.createServerReference)("408f8dde9886e951ba8fdf4440a9f500717070d580",f.callServer,void 0,f.findSourceMapURL,"createFeature");a.i(98617);var h=a.i(50040);a.i(78454);var i=a.i(24255),j=a.i(2824),k=a.i(18948),l=a.i(58860),m=a.i(58339),n=a.i(82934),o=a.i(19884),p=a.i(96213);let q=(0,f.createServerReference)("4039b04ad46b9f7fcf1d1d6944ceb81f67b3e99322",f.callServer,void 0,f.findSourceMapURL,"getViewerPermission");var r=a.i(39116);let s=new Set([".png",".jpg",".jpeg",".gif",".webp",".svg",".bmp",".ico",".pdf",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".txt",".md",".csv",".json",".yaml",".yml",".xml",".ts",".tsx",".js",".jsx",".py",".rb",".go",".rs",".java",".c",".cpp",".h",".hpp",".cs",".swift",".kt",".html",".css",".scss",".less",".sh",".bash",".zsh",".fish",".toml",".ini",".cfg",".conf",".env",".zip",".tar",".gz",".log"]),t={allowPrd:!1,allowPlan:!1,allowMerge:!1};var u=a.i(95014),v=a.i(42728),w=a.i(41042),x=a.i(85536),y=a.i(79620),z=a.i(96867);a.i(307);var A=a.i(30931),B=a.i(61781);function C({description:a,onDescriptionChange:d,attachments:e,onRemoveFile:f,onNotesChange:g,onPaste:i,onDragEnter:j,onDragLeave:k,onDragOver:m,onDrop:o,onAddFiles:p,isDragOver:q,uploadError:r,isPromptFocused:s,onPromptFocus:t,onPromptBlur:D,fast:E,onFastChange:F,pending:G,onPendingChange:H,overrideAgent:I,overrideModel:J,currentAgentType:K,currentModel:L,onAgentModelChange:M,isSubmitting:N}){let{t:O}=(0,h.useTranslation)("web"),P=(0,c.useRef)(null);return(0,b.jsxs)("div",{role:"region","aria-label":O("createDrawer.fileDropZone"),"data-drag-over":q?"true":"false",onDragEnter:j,onDragLeave:k,onDragOver:m,onDrop:o,className:(0,x.cn)("flex flex-col gap-1.5 rounded-md border-2 border-transparent p-1 transition-colors",q&&"border-primary/50 bg-primary/5"),children:[(0,b.jsx)(l.Label,{htmlFor:"feature-description",className:"text-muted-foreground text-xs font-semibold tracking-wider",children:O("createDrawer.describeFeature")}),(0,b.jsxs)("div",{ref:P,onFocus:t,onBlur:()=>{setTimeout(()=>{let a=P.current?.contains(document.activeElement),b=P.current?.querySelector('[aria-expanded="true"]')!==null;a||b||D()},0)},className:(0,x.cn)("border-input flex h-56 flex-col overflow-hidden rounded-md border shadow-xs transition-[color,box-shadow]",s&&"ring-ring/50 border-ring ring-[3px]"),children:[(0,b.jsx)(y.Textarea,{id:"feature-description",placeholder:O("createDrawer.featurePlaceholder"),value:a,onChange:a=>d(a.target.value),onPaste:i,required:!0,disabled:N,"aria-invalid":!!r,"aria-describedby":r?"feature-upload-error":void 0,className:"min-h-0 flex-1 resize-none rounded-none border-0 shadow-none focus-visible:ring-0"}),e.length>0&&(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-1.5 px-3 py-2",children:e.map(a=>(0,b.jsx)(A.AttachmentChip,{name:a.name,size:a.size,mimeType:a.mimeType,path:a.path,onRemove:()=>f(a.id),disabled:N,loading:a.loading,notes:a.notes,onNotesChange:b=>g(a.id,b)},a.id))}),r?(0,b.jsx)("p",{id:"feature-upload-error",className:"text-destructive px-3 pb-2 text-xs",role:"alert",children:r}):null,(0,b.jsxs)("div",{className:"border-input flex items-center gap-3 border-t px-3 py-1.5",children:[(0,b.jsx)(B.AgentModelPicker,{initialAgentType:I??K??"claude-code",initialModel:J??L??"claude-sonnet-4-6",mode:"override",onAgentModelChange:M,disabled:N,className:"w-55"}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"ml-auto flex cursor-pointer items-center gap-2",children:[(0,b.jsx)(z.Switch,{id:"pending-mode",checked:G,onCheckedChange:H,disabled:N}),(0,b.jsxs)(l.Label,{htmlFor:"pending-mode",className:"flex cursor-pointer items-center gap-1 text-sm font-medium",children:[(0,b.jsx)(w.Clock,{className:"h-3.5 w-3.5"}),O("createDrawer.pendingMode")]})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:O("createDrawer.pendingModeDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-2",children:[(0,b.jsx)(z.Switch,{id:"fast-mode",checked:E,onCheckedChange:F,disabled:N}),(0,b.jsxs)(l.Label,{htmlFor:"fast-mode",className:"flex cursor-pointer items-center gap-1 text-sm font-medium",children:[(0,b.jsx)(v.Zap,{className:"h-3.5 w-3.5"}),O("createDrawer.fastModeLabel")]})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:O("createDrawer.fastModeDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",onClick:p,disabled:N,"aria-label":O("chat.attachFiles"),className:"text-muted-foreground hover:text-foreground cursor-pointer rounded p-1 transition-colors",children:(0,b.jsx)(u.PaperclipIcon,{className:"h-4 w-4"})})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:O("chat.attachFiles")})]})]})]})]})}var D=a.i(53759),E=a.i(63204),F=a.i(67664);let G=["allowPrd","allowPlan","allowMerge"];function H({approvalGates:a,onApprovalGatesChange:c,enableEvidence:d,onEnableEvidenceChange:e,commitEvidence:f,onCommitEvidenceChange:g,push:i,onPushChange:j,openPr:k,onOpenPrChange:m,ciWatchEnabled:o,onCiWatchChange:p,rebaseBeforeBranch:q,onRebaseBeforeBranchChange:r,commitSpecs:s,onCommitSpecsChange:t,forkAndPr:u,onForkAndPrChange:v,canPush:w,fast:y,computedPush:A,computedOpenPr:B,isSubmitting:C}){let{t:I}=(0,h.useTranslation)("web"),J=[{id:"allowPrd",label:I("createDrawer.prd"),description:I("createDrawer.prdDescription")},{id:"allowPlan",label:I("createDrawer.plan"),description:I("createDrawer.planDescription")},{id:"allowMerge",label:I("createDrawer.merge"),description:I("createDrawer.mergeDescription")}];return(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsxs)("div",{className:"border-input flex items-center gap-4 rounded-md border px-3 py-2.5",children:[(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:"text-muted-foreground w-16 shrink-0 cursor-default text-xs font-semibold tracking-wider",children:I("createDrawer.approve")})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.approveDescription")})]}),(0,b.jsx)("div",{className:"flex flex-1 items-center gap-4",children:J.map(d=>(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:`approve-${d.id}`,size:"sm",checked:a[d.id]??!1,onCheckedChange:b=>c({...a,[d.id]:b}),disabled:C||y&&("allowPrd"===d.id||"allowPlan"===d.id)}),(0,b.jsx)(l.Label,{htmlFor:`approve-${d.id}`,className:"cursor-pointer text-xs font-medium",children:d.label})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:y&&("allowPrd"===d.id||"allowPlan"===d.id)?I("createDrawer.skippedInFastMode"):d.description})]},d.id))}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",onClick:()=>{let b=G.every(b=>a[b]),d={};for(let a of G)d[a]=!b;c(d)},disabled:C,className:(0,x.cn)("text-muted-foreground hover:text-foreground cursor-pointer rounded px-1.5 py-0.5 text-[10px] font-semibold tracking-wider uppercase transition-colors",G.every(b=>a[b])&&"text-primary"),children:I("createDrawer.all")})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.toggleAllApprovalGates")})]})]}),(0,b.jsxs)("div",{className:"border-input flex items-center gap-4 rounded-md border px-3 py-2.5",children:[(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:"text-muted-foreground w-16 shrink-0 cursor-default text-xs font-semibold tracking-wider",children:I("createDrawer.evidence")})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.evidenceDescription")})]}),(0,b.jsxs)("div",{className:"flex flex-1 items-center gap-4",children:[(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"enable-evidence",size:"sm",checked:d,onCheckedChange:a=>{e(a),a||g(!1)},disabled:C}),(0,b.jsx)(l.Label,{htmlFor:"enable-evidence",className:"cursor-pointer text-xs font-medium",children:I("createDrawer.collect")})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.collectDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"commit-evidence",size:"sm",checked:f,onCheckedChange:g,disabled:C||!d||!k&&!u}),(0,b.jsx)(l.Label,{htmlFor:"commit-evidence",className:(0,x.cn)("cursor-pointer text-xs font-medium",(!d||!k&&!u)&&"opacity-50"),children:I("createDrawer.addToPr")})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:k||u?d?I("createDrawer.addToPrDescription"):I("createDrawer.requiresEvidence"):I("createDrawer.requiresPr")})]})]})]}),(0,b.jsxs)("div",{className:"border-input flex items-start gap-4 rounded-md border px-3 py-2.5",children:[(0,b.jsx)("span",{className:"text-muted-foreground w-16 shrink-0 pt-0.5 text-xs font-semibold tracking-wider",children:I("createDrawer.git")}),(0,b.jsxs)("div",{className:"flex flex-1 flex-wrap items-center gap-4",children:[(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"push",size:"sm",checked:A,onCheckedChange:a=>{j(a),!a&&k&&m(!1)},disabled:C||u}),(0,b.jsx)(l.Label,{htmlFor:"push",className:(0,x.cn)("cursor-pointer text-xs font-medium",u&&"opacity-50"),children:I("createDrawer.push")})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:u?"Enabled — contributing to upstream":I("createDrawer.pushDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"open-pr",size:"sm",checked:B,onCheckedChange:a=>{m(a),a||g(!1)},disabled:C||u}),(0,b.jsx)(l.Label,{htmlFor:"open-pr",className:(0,x.cn)("cursor-pointer text-xs font-medium",u&&"opacity-50"),children:I("createDrawer.pr")})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:u?"Enabled — contributing to upstream":I("createDrawer.prDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"ci-watch",size:"sm",checked:o,onCheckedChange:p,disabled:C}),(0,b.jsx)(l.Label,{htmlFor:"ci-watch",className:"cursor-pointer text-xs font-medium",children:I("createDrawer.watch")})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.watchDescription")})]}),(0,b.jsx)("div",{className:"bg-border h-4 w-px shrink-0"}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"rebase-before-branch",size:"sm",checked:q,onCheckedChange:r,disabled:C}),(0,b.jsxs)(l.Label,{htmlFor:"rebase-before-branch",className:"flex cursor-pointer items-center gap-1 text-xs font-medium",children:[(0,b.jsx)(F.RefreshCw,{className:"h-3 w-3"}),I("createDrawer.sync")]})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.syncDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"commit-specs",size:"sm",checked:s,onCheckedChange:t,disabled:C}),(0,b.jsxs)(l.Label,{htmlFor:"commit-specs",className:"flex cursor-pointer items-center gap-1 text-xs font-medium",children:[(0,b.jsx)(E.FileText,{className:"h-3 w-3"}),I("createDrawer.commitSpecs")]})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.commitSpecsDescription")})]}),!w&&(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"fork-and-pr",size:"sm",checked:u,onCheckedChange:a=>{v(a),a&&t(!1)},disabled:C}),(0,b.jsxs)(l.Label,{htmlFor:"fork-and-pr",className:"flex cursor-pointer items-center gap-1 text-xs font-medium",children:[(0,b.jsx)(D.GitFork,{className:"h-3 w-3"}),I("createDrawer.forkAndPr")]})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.forkAndPrDescription")})]})]})]})]})}var I=a.i(99829),J=a.i(95881),K=a.i(90920),L=a.i(53823);function M({features:a,value:d,onChange:e,disabled:f}){let{t:g}=(0,h.useTranslation)("web"),[i,j]=(0,c.useState)(!1),[k,l]=(0,c.useState)(""),m=(0,c.useRef)(null),n=a.find(a=>a.id===d),o=k.trim()?a.filter(a=>a.name.toLowerCase().includes(k.toLowerCase())||a.id.toLowerCase().includes(k.toLowerCase())):a,p=(0,c.useCallback)(a=>{e(a),j(!1),l("")},[e]);return(0,c.useEffect)(()=>{i?setTimeout(()=>m.current?.focus(),0):l("")},[i]),(0,b.jsxs)(L.Popover,{open:i,onOpenChange:j,children:[(0,b.jsx)(L.PopoverTrigger,{asChild:!0,children:(0,b.jsxs)("button",{id:"parent-feature",type:"button",role:"combobox","aria-expanded":i,"aria-label":"Parent Feature",disabled:f,"data-testid":"parent-feature-combobox",className:(0,x.cn)("border-input bg-background ring-offset-background focus:ring-ring flex h-9 w-full items-center justify-between rounded-md border px-3 py-2 text-sm focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",!n&&"text-muted-foreground"),children:[(0,b.jsx)("span",{className:"truncate",children:n?`${n.name} (${n.id.slice(0,8)})`:g("createDrawer.selectParent")}),(0,b.jsx)(I.ChevronsUpDown,{className:"ms-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,b.jsx)(L.PopoverContent,{className:"w-80 p-0",align:"start","data-testid":"parent-feature-combobox-content",children:(0,b.jsxs)("div",{className:"flex flex-col",children:[(0,b.jsx)("div",{className:"border-b p-2",children:(0,b.jsx)(K.Input,{ref:m,placeholder:g("createDrawer.searchFeatures"),value:k,onChange:a=>l(a.target.value),className:"h-8 border-0 p-0 text-sm shadow-none focus-visible:ring-0","data-testid":"parent-feature-search"})}),(0,b.jsxs)("div",{className:"max-h-48 overflow-y-auto py-1",role:"listbox","aria-label":"Features",children:[(0,b.jsxs)("button",{type:"button",role:"option","aria-selected":void 0===d,onClick:()=>p(void 0),className:(0,x.cn)("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm",void 0===d&&"bg-accent/50"),"data-testid":"parent-feature-option-none",children:[(0,b.jsx)(J.CheckIcon,{className:(0,x.cn)("h-4 w-4 shrink-0",void 0!==d&&"invisible")}),(0,b.jsx)("span",{className:"text-muted-foreground italic",children:g("createDrawer.noParent")})]}),0===o.length&&k?(0,b.jsx)("p",{className:"text-muted-foreground px-3 py-2 text-sm",children:g("createDrawer.noFeaturesFound")}):o.map(a=>(0,b.jsxs)("button",{type:"button",role:"option","aria-selected":d===a.id,onClick:()=>p(a.id),className:(0,x.cn)("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm",d===a.id&&"bg-accent/50"),"data-testid":`parent-feature-option-${a.id}`,children:[(0,b.jsx)(J.CheckIcon,{className:(0,x.cn)("h-4 w-4 shrink-0",d!==a.id&&"invisible")}),(0,b.jsxs)("span",{className:"truncate",children:[a.name," ",(0,b.jsxs)("span",{className:"text-muted-foreground font-mono text-xs",children:["(",a.id.slice(0,8),")"]})]})]},a.id))]})]})})]})}var N=a.i(31271),O=a.i(20901),P=a.i(13126),Q=a.i(21333),R=a.i(4152),S=a.i(1377);a.i(21434);var T=a.i(34379);function U({repositories:a,value:d,onChange:e,onAddRepository:f,disabled:g}){let[i,j]=(0,c.useState)(!1),[k,l]=(0,c.useState)(""),[m,n]=(0,c.useState)(!1),[o,p]=(0,c.useState)(null),[q,r]=(0,c.useState)(!1),s=(0,c.useRef)(null),{reactFileManager:t}=(0,Q.useFeatureFlags)(),{t:u}=(0,h.useTranslation)("web"),v=a.find(a=>a.path===d),w=k.trim()?a.filter(a=>a.name.toLowerCase().includes(k.toLowerCase())||a.path.toLowerCase().includes(k.toLowerCase())):a,y=(0,c.useCallback)(a=>{e(a),j(!1),l("")},[e]),z=(0,c.useCallback)(async a=>{let b=await (0,R.addRepository)({path:a});if(b.error){p(b.error),n(!1);return}if(b.repository){let a={id:b.repository.id,name:b.repository.name,path:b.repository.path};f?.(a),e(a.path),j(!1),l("")}},[f,e]),A=(0,c.useCallback)(async()=>{if(!m){if(t)return void r(!0);n(!0),p(null);try{let a=await (0,S.pickFolder)();if(!a)return void n(!1);await z(a)}catch{r(!0)}finally{n(!1)}}},[m,t,z]),B=(0,c.useCallback)(async a=>{if(r(!1),a){n(!0),p(null);try{await z(a)}catch(a){p(a instanceof Error?a.message:"Failed to add repository")}finally{n(!1)}}},[z]);return(0,c.useEffect)(()=>{i?setTimeout(()=>s.current?.focus(),0):l("")},[i]),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(L.Popover,{open:i,onOpenChange:j,children:[(0,b.jsx)(L.PopoverTrigger,{asChild:!0,children:(0,b.jsxs)("button",{type:"button",role:"combobox","aria-expanded":i,"aria-label":"Repository","aria-invalid":!!o,"aria-describedby":o?"add-repository-error-msg":void 0,disabled:g,"data-testid":"repository-combobox",className:(0,x.cn)("border-input bg-background ring-offset-background focus:ring-ring flex h-9 w-full items-center justify-between rounded-md border px-3 py-2 text-sm focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",!v&&"text-muted-foreground"),children:[(0,b.jsx)("span",{className:"truncate",children:v?v.name:"Select repository..."}),(0,b.jsx)(I.ChevronsUpDown,{className:"ms-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,b.jsx)(L.PopoverContent,{className:"w-80 p-0",align:"start","data-testid":"repository-combobox-content",children:(0,b.jsxs)("div",{className:"flex flex-col",children:[(0,b.jsx)("div",{className:"border-b p-2",children:(0,b.jsx)(K.Input,{ref:s,placeholder:u("createDrawer.searchRepositories"),value:k,onChange:a=>l(a.target.value),className:"h-8 border-0 p-0 text-sm shadow-none focus-visible:ring-0","data-testid":"repository-search"})}),(0,b.jsx)("div",{className:"max-h-48 overflow-y-auto py-1",role:"listbox","aria-label":"Repositories",children:0===w.length?(0,b.jsx)("p",{className:"text-muted-foreground px-3 py-2 text-sm","data-testid":"repository-empty",children:"No repositories found."}):w.map(a=>(0,b.jsxs)("button",{type:"button",role:"option","aria-selected":d===a.path,onClick:()=>y(a.path),className:(0,x.cn)("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm",d===a.path&&"bg-accent/50"),"data-testid":`repository-option-${a.id}`,children:[(0,b.jsx)(J.CheckIcon,{className:(0,x.cn)("h-4 w-4 shrink-0",d!==a.path&&"invisible")}),(0,b.jsxs)("span",{className:"flex flex-col items-start truncate",children:[(0,b.jsx)("span",{className:"truncate",children:a.name}),(0,b.jsx)("span",{className:"text-muted-foreground truncate text-xs",children:a.path})]})]},a.id))}),(0,b.jsx)(P.Separator,{}),(0,b.jsxs)("button",{type:"button",onClick:A,disabled:m,className:"hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm","data-testid":"add-repository-item",children:[m?(0,b.jsx)(O.LoaderCircle,{className:"h-4 w-4 shrink-0 animate-spin"}):(0,b.jsx)(N.FolderPlus,{className:"h-4 w-4 shrink-0"}),(0,b.jsx)("span",{children:"Add new repository..."})]}),o?(0,b.jsx)("p",{id:"add-repository-error-msg",className:"px-3 pb-2 text-xs text-red-500",role:"alert","data-testid":"add-repository-error",children:o}):null]})})]}),(0,b.jsx)(T.ReactFileManagerDialog,{open:q,onOpenChange:a=>{a||r(!1)},onSelect:B})]})}function V({open:a,onClose:d,onSubmit:e,repositoryPath:f,isSubmitting:g=!1,workflowDefaults:u,features:v,repositories:w,initialParentId:x,currentAgentType:y,currentModel:z,initialDescription:A,canPushDirectly:B}){let{t:D}=(0,h.useTranslation)("web"),E=function({open:a,onClose:b,onSubmit:d,repositoryPath:e,workflowDefaults:f,repositories:g,initialParentId:h,currentAgentType:i,currentModel:j,initialDescription:k,canPushDirectly:l}){let m=(0,o.useSoundAction)("create"),n=e&&(!g||0===g.length||g.some(a=>a.path===e))?e:"",u=f?.approvalGates??t,v=f?.push??!1,w=f?.openPr??!1,x=f?.ciWatchEnabled!==!1,y=f?.enableEvidence??!1,z=f?.commitEvidence??!1,A=f?.fast!==!1,[B,C]=(0,c.useState)(k??"");(0,c.useEffect)(()=>{k&&C(k)},[k]);let[D,E]=(0,c.useState)([]),[F,G]=(0,c.useState)({...u}),[H,I]=(0,c.useState)(v),[J,K]=(0,c.useState)(w),[L,M]=(0,c.useState)(f?.ciWatchEnabled!==!1),[N,O]=(0,c.useState)(y),[P,Q]=(0,c.useState)(z),[R,S]=(0,c.useState)(void 0),[T,U]=(0,c.useState)(A),[V,W]=(0,c.useState)(!1),[X,Y]=(0,c.useState)(!1),[Z,$]=(0,c.useState)(!0),[_,aa]=(0,c.useState)(!0),[ab,ac]=(0,c.useState)(void 0),[ad,ae]=(0,c.useState)(void 0),[af,ag]=(0,c.useState)(n||void 0),[ah,ai]=(0,c.useState)(g??[]),[aj,ak]=(0,c.useState)(!1),[al,am]=(0,c.useState)(null),[an,ao]=(0,c.useState)(!1),ap=(0,c.useRef)(crypto.randomUUID()),aq=(0,c.useRef)(0);(0,c.useEffect)(()=>{f&&(G({...f.approvalGates}),I(f.push),K(f.openPr),M(!1!==f.ciWatchEnabled),O(f.enableEvidence),Q(f.commitEvidence),U(!1!==f.fast))},[f]),(0,c.useEffect)(()=>{ai(g??[])},[g]),(0,c.useEffect)(()=>{a&&h&&S(h)},[a,h]);let[ar,as]=(0,c.useState)(l??!1);(0,c.useEffect)(()=>{as(l??!1)},[l]);let at=(0,c.useRef)(af);(0,c.useEffect)(()=>{af&&af!==at.current&&(at.current=af,q(af).then(a=>as(a.canPushDirectly)).catch(()=>as(!1)))},[af]),(0,c.useEffect)(()=>{ar&&(Y(!1),I(v),K(w),$(!0))},[ar,v,w]);let au=(0,c.useCallback)(()=>{C(""),E([]),G({...u}),I(v),K(w),M(x),O(y),Q(z),S(void 0),ag(n||void 0),ai(g??[]),U(A),W(!1),Y(!1),$(!0),aa(!0),ac(void 0),ae(void 0),am(null),aq.current=0,ak(!1)},[u,v,w,y,x,z,A,n,g]),av=""!==B.trim()||D.length>0,{attemptClose:aw}=(0,p.useGuardedDrawerClose)({open:a,isDirty:av,onClose:b,onReset:au}),ax=(0,c.useCallback)(async a=>{for(let b of(am(null),a)){if(b.size>0xa00000)return void am(`"${b.name}" exceeds 10 MB limit`);let a=function(a){let b=a.lastIndexOf(".");return b>=0?a.slice(b).toLowerCase():""}(b.name);if(a&&!s.has(a))return void am(`File type "${a}" is not allowed`)}for(let b of a){let a=crypto.randomUUID();E(c=>[...c,{id:a,name:b.name,size:b.size,mimeType:b.type||"application/octet-stream",path:"",loading:!0}]);try{let c=new FormData;c.append("file",b),c.append("sessionId",ap.current);let d=await fetch("/api/attachments/upload",{method:"POST",body:c});if(!d.ok){let b=await d.json().catch(()=>({error:"Upload failed"}));E(b=>b.filter(b=>b.id!==a)),am(b.error??"Upload failed");return}let e=await d.json();E(b=>b.some(b=>b.id!==a&&b.path===e.path)?b.filter(b=>b.id!==a):b.map(b=>b.id===a?{...e,id:a,loading:!1}:b))}catch{E(b=>b.filter(b=>b.id!==a)),am("Upload failed")}}},[]),ay=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),aq.current+=1,1===aq.current&&ak(!0)},[]),az=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),aq.current-=1,0===aq.current&&ak(!1)},[]),aA=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation()},[]),aB=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),aq.current=0,ak(!1);let b=Array.from(a.dataTransfer.files);b.length>0&&ax(b)},[ax]),aC=(0,c.useCallback)(a=>{let b=a.clipboardData?.items;if(!b)return;let c=[];for(let a of Array.from(b))if("file"===a.kind){let b=a.getAsFile();b&&c.push(b)}c.length>0&&(a.preventDefault(),ax(c))},[ax]),aD=(0,c.useCallback)(a=>{if(a.preventDefault(),!B.trim())return;let b=af??n;b&&(m.play(),d({description:B.trim(),attachments:D.filter(a=>!a.loading),repositoryPath:b,approvalGates:{allowPrd:F.allowPrd??!1,allowPlan:F.allowPlan??!1,allowMerge:F.allowMerge??!1},push:!!X||H||J,openPr:!!X||J,ciWatchEnabled:L,enableEvidence:N,commitEvidence:P,fast:T,forkAndPr:X,commitSpecs:Z,rebaseBeforeBranch:_,...V?{pending:V}:{},...ab?{agentType:ab}:{},...ad?{model:ad}:{},...R?{parentId:R}:{},sessionId:ap.current}),au())},[B,D,F,af,n,d,H,J,N,L,P,T,X,Z,_,V,ab,ad,R,m,au]),aE=(0,c.useCallback)(async()=>{try{let a=await (0,r.pickFiles)();if(!a)return;for(let b of a){let a=crypto.randomUUID();E(c=>[...c,{id:a,name:b.name,size:b.size,mimeType:"application/octet-stream",path:"",loading:!0}]);try{let c=await fetch("/api/attachments/upload-from-path",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:b.path,sessionId:ap.current})});if(!c.ok){let b=await c.json().catch(()=>({error:"Upload failed"}));E(b=>b.filter(b=>b.id!==a)),am(b.error??"Upload failed");return}let d=await c.json();E(b=>b.some(b=>b.id!==a&&b.path===d.path)?b.filter(b=>b.id!==a):b.map(b=>b.id===a?{...d,id:a,loading:!1}:b))}catch{E(b=>b.filter(b=>b.id!==a)),am("Upload failed")}}}catch{}},[]),aF=(0,c.useCallback)(a=>{E(b=>b.filter(b=>b.id!==a))},[]),aG=(0,c.useCallback)((a,b)=>{E(c=>c.map(c=>c.id===a?{...c,notes:b}:c))},[]);return{validRepoPath:n,canPush:ar,isDirty:av,computedPush:!!X||H||J,computedOpenPr:!!X||J,description:B,setDescription:C,attachments:D,approvalGates:F,setApprovalGates:G,push:H,setPush:I,openPr:J,setOpenPr:K,ciWatchEnabled:L,setCiWatchEnabled:M,enableEvidence:N,setEnableEvidence:O,commitEvidence:P,setCommitEvidence:Q,parentId:R,setParentId:S,fast:T,setFast:U,pending:V,setPending:W,forkAndPr:X,setForkAndPr:Y,commitSpecs:Z,setCommitSpecs:$,rebaseBeforeBranch:_,setRebaseBeforeBranch:aa,overrideAgent:ab,setOverrideAgent:ac,overrideModel:ad,setOverrideModel:ae,selectedRepoPath:af,setSelectedRepoPath:ag,localRepos:ah,setLocalRepos:ai,isDragOver:aj,uploadError:al,isPromptFocused:an,setIsPromptFocused:ao,sessionIdRef:ap,currentAgentType:i,currentModel:j,attemptClose:aw,handleFiles:ax,handleDragEnter:ay,handleDragLeave:az,handleDragOver:aA,handleDrop:aB,handlePaste:aC,handleSubmit:aD,handleAddFiles:aE,handleRemoveFile:aF,handleNotesChange:aG,resetForm:au}}({open:a,onClose:d,onSubmit:e,repositoryPath:f,workflowDefaults:u,repositories:w,initialParentId:x,currentAgentType:y,currentModel:z,initialDescription:A,canPushDirectly:B}),F=(0,c.useRef)(null),G=(0,c.useCallback)(a=>{(a.ctrlKey||a.metaKey)&&"Enter"===a.key&&(a.preventDefault(),F.current?.requestSubmit())},[]),I=v&&v.length>0,J=!E.validRepoPath&&void 0!==w,K=!E.validRepoPath&&!E.selectedRepoPath;return(0,b.jsx)(i.BaseDrawer,{open:a,onClose:E.attemptClose,size:"md",modal:!1,dismissOnOutsideClick:!0,"data-testid":"feature-create-drawer",header:(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("div",{className:"h-2.5 w-2.5 shrink-0 rounded-full bg-blue-500"}),(0,b.jsx)(j.DrawerTitle,{children:D("createDrawer.title")})]}),g?(0,b.jsx)(j.DrawerDescription,{asChild:!0,children:(0,b.jsx)("div",{children:(0,b.jsx)(m.Badge,{variant:"secondary",children:D("createDrawer.creating")})})}):null]}),footer:(0,b.jsxs)("div",{className:"flex flex-row justify-end gap-2",children:[(0,b.jsx)(k.Button,{variant:"outline",onClick:E.attemptClose,disabled:g,children:D("createDrawer.cancel")}),(0,b.jsx)(k.Button,{type:"submit",form:"create-feature-form",disabled:!E.description.trim()||g||K,children:D(g?"createDrawer.creating":"createDrawer.createFeature")})]}),children:(0,b.jsx)("div",{className:"overflow-y-auto p-4",children:(0,b.jsx)(n.TooltipProvider,{delayDuration:400,children:(0,b.jsxs)("form",{ref:F,id:"create-feature-form",onSubmit:E.handleSubmit,onKeyDown:G,className:"flex flex-col gap-4",children:[J?(0,b.jsxs)("div",{className:"flex flex-col gap-1.5","data-testid":"repo-selector-section",children:[(0,b.jsx)(l.Label,{className:"text-muted-foreground text-xs font-semibold tracking-wider",children:D("createDrawer.repository")}),(0,b.jsx)(U,{repositories:E.localRepos,value:E.selectedRepoPath,onChange:E.setSelectedRepoPath,onAddRepository:a=>{E.setLocalRepos(b=>[...b,a]),E.setSelectedRepoPath(a.path)},disabled:g})]}):E.validRepoPath?(0,b.jsxs)("div",{className:"flex flex-col gap-1.5","data-testid":"repo-readonly-section",children:[(0,b.jsx)(l.Label,{className:"text-muted-foreground text-xs font-semibold tracking-wider",children:D("createDrawer.repository")}),(0,b.jsx)("p",{className:"text-sm","data-testid":"repo-readonly-label",children:w?.find(a=>a.path===E.validRepoPath)?.name??E.validRepoPath.split("/").pop()})]}):null,(0,b.jsx)(C,{description:E.description,onDescriptionChange:E.setDescription,attachments:E.attachments,onRemoveFile:E.handleRemoveFile,onNotesChange:E.handleNotesChange,onPaste:E.handlePaste,onDragEnter:E.handleDragEnter,onDragLeave:E.handleDragLeave,onDragOver:E.handleDragOver,onDrop:E.handleDrop,onAddFiles:E.handleAddFiles,isDragOver:E.isDragOver,uploadError:E.uploadError,isPromptFocused:E.isPromptFocused,onPromptFocus:()=>E.setIsPromptFocused(!0),onPromptBlur:()=>E.setIsPromptFocused(!1),fast:E.fast,onFastChange:E.setFast,pending:E.pending,onPendingChange:E.setPending,overrideAgent:E.overrideAgent,overrideModel:E.overrideModel,currentAgentType:y,currentModel:z,onAgentModelChange:(a,b)=>{E.setOverrideAgent(a),E.setOverrideModel(b)},isSubmitting:g}),I&&void 0!==x?(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)(l.Label,{htmlFor:"parent-feature",className:"text-muted-foreground text-xs font-semibold tracking-wider",children:D("createDrawer.parentFeature")}),(0,b.jsx)(M,{features:v,value:E.parentId,onChange:E.setParentId,disabled:g})]}):null,(0,b.jsx)(H,{approvalGates:E.approvalGates,onApprovalGatesChange:E.setApprovalGates,enableEvidence:E.enableEvidence,onEnableEvidenceChange:E.setEnableEvidence,commitEvidence:E.commitEvidence,onCommitEvidenceChange:E.setCommitEvidence,push:E.push,onPushChange:E.setPush,openPr:E.openPr,onOpenPrChange:E.setOpenPr,ciWatchEnabled:E.ciWatchEnabled,onCiWatchChange:E.setCiWatchEnabled,rebaseBeforeBranch:E.rebaseBeforeBranch,onRebaseBeforeBranchChange:E.setRebaseBeforeBranch,commitSpecs:E.commitSpecs,onCommitSpecsChange:E.setCommitSpecs,forkAndPr:E.forkAndPr,onForkAndPrChange:E.setForkAndPr,canPush:E.canPush,fast:E.fast,computedPush:E.computedPush,computedOpenPr:E.computedOpenPr,isSubmitting:g})]})})})})}a.s(["CreateDrawerClient",0,function({repositoryPath:a,initialParentId:f,initialDescription:h,features:i,repositories:j,workflowDefaults:k,currentAgentType:l,currentModel:m,canPushDirectly:n}){let o=(0,d.useRouter)(),[p,q]=(0,c.useState)(!1),r=(0,d.usePathname)().startsWith("/create"),s=!p&&r;(0,c.useEffect)(()=>{!r&&p&&q(!1)},[r,p]);let t=(0,c.useCallback)(()=>{o.push("/")},[o]),u=(0,c.useCallback)(a=>{q(!0),o.push("/"),g(a).then(b=>{b.error?e.toast.error(b.error):window.dispatchEvent(new CustomEvent("shipit-ai:feature-created",{detail:{featureId:b.feature.id,name:b.feature.name,description:b.feature.description,repositoryPath:b.feature.repositoryPath,parentId:a.parentId}}))}).catch(()=>{e.toast.error("Failed to create feature"),q(!1)})},[o]);return(0,b.jsx)(V,{open:s,onClose:t,onSubmit:u,repositoryPath:a,features:i,repositories:j,workflowDefaults:k,initialParentId:f,initialDescription:h,isSubmitting:p,currentAgentType:l,currentModel:m,canPushDirectly:n})}],93995)}];
1
+ module.exports=[93995,a=>{"use strict";var b=a.i(53083),c=a.i(11321),d=a.i(40674),e=a.i(52313),f=a.i(6120);let g=(0,f.createServerReference)("401128c86a50540ecb3f59feb73171107a7dc8726d",f.callServer,void 0,f.findSourceMapURL,"createFeature");a.i(98617);var h=a.i(50040);a.i(78454);var i=a.i(24255),j=a.i(2824),k=a.i(18948),l=a.i(58860),m=a.i(58339),n=a.i(82934),o=a.i(19884),p=a.i(96213);let q=(0,f.createServerReference)("40cc24fe72db422b72baa8d6e887613cb12b3b2b75",f.callServer,void 0,f.findSourceMapURL,"getViewerPermission");var r=a.i(39116);let s=new Set([".png",".jpg",".jpeg",".gif",".webp",".svg",".bmp",".ico",".pdf",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".txt",".md",".csv",".json",".yaml",".yml",".xml",".ts",".tsx",".js",".jsx",".py",".rb",".go",".rs",".java",".c",".cpp",".h",".hpp",".cs",".swift",".kt",".html",".css",".scss",".less",".sh",".bash",".zsh",".fish",".toml",".ini",".cfg",".conf",".env",".zip",".tar",".gz",".log"]),t={allowPrd:!1,allowPlan:!1,allowMerge:!1};var u=a.i(95014),v=a.i(42728),w=a.i(41042),x=a.i(85536),y=a.i(79620),z=a.i(96867);a.i(307);var A=a.i(30931),B=a.i(61781);function C({description:a,onDescriptionChange:d,attachments:e,onRemoveFile:f,onNotesChange:g,onPaste:i,onDragEnter:j,onDragLeave:k,onDragOver:m,onDrop:o,onAddFiles:p,isDragOver:q,uploadError:r,isPromptFocused:s,onPromptFocus:t,onPromptBlur:D,fast:E,onFastChange:F,pending:G,onPendingChange:H,overrideAgent:I,overrideModel:J,currentAgentType:K,currentModel:L,onAgentModelChange:M,isSubmitting:N}){let{t:O}=(0,h.useTranslation)("web"),P=(0,c.useRef)(null);return(0,b.jsxs)("div",{role:"region","aria-label":O("createDrawer.fileDropZone"),"data-drag-over":q?"true":"false",onDragEnter:j,onDragLeave:k,onDragOver:m,onDrop:o,className:(0,x.cn)("flex flex-col gap-1.5 rounded-md border-2 border-transparent p-1 transition-colors",q&&"border-primary/50 bg-primary/5"),children:[(0,b.jsx)(l.Label,{htmlFor:"feature-description",className:"text-muted-foreground text-xs font-semibold tracking-wider",children:O("createDrawer.describeFeature")}),(0,b.jsxs)("div",{ref:P,onFocus:t,onBlur:()=>{setTimeout(()=>{let a=P.current?.contains(document.activeElement),b=P.current?.querySelector('[aria-expanded="true"]')!==null;a||b||D()},0)},className:(0,x.cn)("border-input flex h-56 flex-col overflow-hidden rounded-md border shadow-xs transition-[color,box-shadow]",s&&"ring-ring/50 border-ring ring-[3px]"),children:[(0,b.jsx)(y.Textarea,{id:"feature-description",placeholder:O("createDrawer.featurePlaceholder"),value:a,onChange:a=>d(a.target.value),onPaste:i,required:!0,disabled:N,"aria-invalid":!!r,"aria-describedby":r?"feature-upload-error":void 0,className:"min-h-0 flex-1 resize-none rounded-none border-0 shadow-none focus-visible:ring-0"}),e.length>0&&(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-1.5 px-3 py-2",children:e.map(a=>(0,b.jsx)(A.AttachmentChip,{name:a.name,size:a.size,mimeType:a.mimeType,path:a.path,onRemove:()=>f(a.id),disabled:N,loading:a.loading,notes:a.notes,onNotesChange:b=>g(a.id,b)},a.id))}),r?(0,b.jsx)("p",{id:"feature-upload-error",className:"text-destructive px-3 pb-2 text-xs",role:"alert",children:r}):null,(0,b.jsxs)("div",{className:"border-input flex items-center gap-3 border-t px-3 py-1.5",children:[(0,b.jsx)(B.AgentModelPicker,{initialAgentType:I??K??"claude-code",initialModel:J??L??"claude-sonnet-4-6",mode:"override",onAgentModelChange:M,disabled:N,className:"w-55"}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"ml-auto flex cursor-pointer items-center gap-2",children:[(0,b.jsx)(z.Switch,{id:"pending-mode",checked:G,onCheckedChange:H,disabled:N}),(0,b.jsxs)(l.Label,{htmlFor:"pending-mode",className:"flex cursor-pointer items-center gap-1 text-sm font-medium",children:[(0,b.jsx)(w.Clock,{className:"h-3.5 w-3.5"}),O("createDrawer.pendingMode")]})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:O("createDrawer.pendingModeDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-2",children:[(0,b.jsx)(z.Switch,{id:"fast-mode",checked:E,onCheckedChange:F,disabled:N}),(0,b.jsxs)(l.Label,{htmlFor:"fast-mode",className:"flex cursor-pointer items-center gap-1 text-sm font-medium",children:[(0,b.jsx)(v.Zap,{className:"h-3.5 w-3.5"}),O("createDrawer.fastModeLabel")]})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:O("createDrawer.fastModeDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",onClick:p,disabled:N,"aria-label":O("chat.attachFiles"),className:"text-muted-foreground hover:text-foreground cursor-pointer rounded p-1 transition-colors",children:(0,b.jsx)(u.PaperclipIcon,{className:"h-4 w-4"})})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:O("chat.attachFiles")})]})]})]})]})}var D=a.i(53759),E=a.i(63204),F=a.i(67664);let G=["allowPrd","allowPlan","allowMerge"];function H({approvalGates:a,onApprovalGatesChange:c,enableEvidence:d,onEnableEvidenceChange:e,commitEvidence:f,onCommitEvidenceChange:g,push:i,onPushChange:j,openPr:k,onOpenPrChange:m,ciWatchEnabled:o,onCiWatchChange:p,rebaseBeforeBranch:q,onRebaseBeforeBranchChange:r,commitSpecs:s,onCommitSpecsChange:t,forkAndPr:u,onForkAndPrChange:v,canPush:w,fast:y,computedPush:A,computedOpenPr:B,isSubmitting:C}){let{t:I}=(0,h.useTranslation)("web"),J=[{id:"allowPrd",label:I("createDrawer.prd"),description:I("createDrawer.prdDescription")},{id:"allowPlan",label:I("createDrawer.plan"),description:I("createDrawer.planDescription")},{id:"allowMerge",label:I("createDrawer.merge"),description:I("createDrawer.mergeDescription")}];return(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsxs)("div",{className:"border-input flex items-center gap-4 rounded-md border px-3 py-2.5",children:[(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:"text-muted-foreground w-16 shrink-0 cursor-default text-xs font-semibold tracking-wider",children:I("createDrawer.approve")})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.approveDescription")})]}),(0,b.jsx)("div",{className:"flex flex-1 items-center gap-4",children:J.map(d=>(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:`approve-${d.id}`,size:"sm",checked:a[d.id]??!1,onCheckedChange:b=>c({...a,[d.id]:b}),disabled:C||y&&("allowPrd"===d.id||"allowPlan"===d.id)}),(0,b.jsx)(l.Label,{htmlFor:`approve-${d.id}`,className:"cursor-pointer text-xs font-medium",children:d.label})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:y&&("allowPrd"===d.id||"allowPlan"===d.id)?I("createDrawer.skippedInFastMode"):d.description})]},d.id))}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",onClick:()=>{let b=G.every(b=>a[b]),d={};for(let a of G)d[a]=!b;c(d)},disabled:C,className:(0,x.cn)("text-muted-foreground hover:text-foreground cursor-pointer rounded px-1.5 py-0.5 text-[10px] font-semibold tracking-wider uppercase transition-colors",G.every(b=>a[b])&&"text-primary"),children:I("createDrawer.all")})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.toggleAllApprovalGates")})]})]}),(0,b.jsxs)("div",{className:"border-input flex items-center gap-4 rounded-md border px-3 py-2.5",children:[(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:"text-muted-foreground w-16 shrink-0 cursor-default text-xs font-semibold tracking-wider",children:I("createDrawer.evidence")})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.evidenceDescription")})]}),(0,b.jsxs)("div",{className:"flex flex-1 items-center gap-4",children:[(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"enable-evidence",size:"sm",checked:d,onCheckedChange:a=>{e(a),a||g(!1)},disabled:C}),(0,b.jsx)(l.Label,{htmlFor:"enable-evidence",className:"cursor-pointer text-xs font-medium",children:I("createDrawer.collect")})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.collectDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"commit-evidence",size:"sm",checked:f,onCheckedChange:g,disabled:C||!d||!k&&!u}),(0,b.jsx)(l.Label,{htmlFor:"commit-evidence",className:(0,x.cn)("cursor-pointer text-xs font-medium",(!d||!k&&!u)&&"opacity-50"),children:I("createDrawer.addToPr")})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:k||u?d?I("createDrawer.addToPrDescription"):I("createDrawer.requiresEvidence"):I("createDrawer.requiresPr")})]})]})]}),(0,b.jsxs)("div",{className:"border-input flex items-start gap-4 rounded-md border px-3 py-2.5",children:[(0,b.jsx)("span",{className:"text-muted-foreground w-16 shrink-0 pt-0.5 text-xs font-semibold tracking-wider",children:I("createDrawer.git")}),(0,b.jsxs)("div",{className:"flex flex-1 flex-wrap items-center gap-4",children:[(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"push",size:"sm",checked:A,onCheckedChange:a=>{j(a),!a&&k&&m(!1)},disabled:C||u}),(0,b.jsx)(l.Label,{htmlFor:"push",className:(0,x.cn)("cursor-pointer text-xs font-medium",u&&"opacity-50"),children:I("createDrawer.push")})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:u?"Enabled — contributing to upstream":I("createDrawer.pushDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"open-pr",size:"sm",checked:B,onCheckedChange:a=>{m(a),a||g(!1)},disabled:C||u}),(0,b.jsx)(l.Label,{htmlFor:"open-pr",className:(0,x.cn)("cursor-pointer text-xs font-medium",u&&"opacity-50"),children:I("createDrawer.pr")})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:u?"Enabled — contributing to upstream":I("createDrawer.prDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"ci-watch",size:"sm",checked:o,onCheckedChange:p,disabled:C}),(0,b.jsx)(l.Label,{htmlFor:"ci-watch",className:"cursor-pointer text-xs font-medium",children:I("createDrawer.watch")})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.watchDescription")})]}),(0,b.jsx)("div",{className:"bg-border h-4 w-px shrink-0"}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"rebase-before-branch",size:"sm",checked:q,onCheckedChange:r,disabled:C}),(0,b.jsxs)(l.Label,{htmlFor:"rebase-before-branch",className:"flex cursor-pointer items-center gap-1 text-xs font-medium",children:[(0,b.jsx)(F.RefreshCw,{className:"h-3 w-3"}),I("createDrawer.sync")]})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.syncDescription")})]}),(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"commit-specs",size:"sm",checked:s,onCheckedChange:t,disabled:C}),(0,b.jsxs)(l.Label,{htmlFor:"commit-specs",className:"flex cursor-pointer items-center gap-1 text-xs font-medium",children:[(0,b.jsx)(E.FileText,{className:"h-3 w-3"}),I("createDrawer.commitSpecs")]})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.commitSpecsDescription")})]}),!w&&(0,b.jsxs)(n.Tooltip,{children:[(0,b.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,b.jsx)(z.Switch,{id:"fork-and-pr",size:"sm",checked:u,onCheckedChange:a=>{v(a),a&&t(!1)},disabled:C}),(0,b.jsxs)(l.Label,{htmlFor:"fork-and-pr",className:"flex cursor-pointer items-center gap-1 text-xs font-medium",children:[(0,b.jsx)(D.GitFork,{className:"h-3 w-3"}),I("createDrawer.forkAndPr")]})]})}),(0,b.jsx)(n.TooltipContent,{side:"bottom",children:I("createDrawer.forkAndPrDescription")})]})]})]})]})}var I=a.i(99829),J=a.i(95881),K=a.i(90920),L=a.i(53823);function M({features:a,value:d,onChange:e,disabled:f}){let{t:g}=(0,h.useTranslation)("web"),[i,j]=(0,c.useState)(!1),[k,l]=(0,c.useState)(""),m=(0,c.useRef)(null),n=a.find(a=>a.id===d),o=k.trim()?a.filter(a=>a.name.toLowerCase().includes(k.toLowerCase())||a.id.toLowerCase().includes(k.toLowerCase())):a,p=(0,c.useCallback)(a=>{e(a),j(!1),l("")},[e]);return(0,c.useEffect)(()=>{i?setTimeout(()=>m.current?.focus(),0):l("")},[i]),(0,b.jsxs)(L.Popover,{open:i,onOpenChange:j,children:[(0,b.jsx)(L.PopoverTrigger,{asChild:!0,children:(0,b.jsxs)("button",{id:"parent-feature",type:"button",role:"combobox","aria-expanded":i,"aria-label":"Parent Feature",disabled:f,"data-testid":"parent-feature-combobox",className:(0,x.cn)("border-input bg-background ring-offset-background focus:ring-ring flex h-9 w-full items-center justify-between rounded-md border px-3 py-2 text-sm focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",!n&&"text-muted-foreground"),children:[(0,b.jsx)("span",{className:"truncate",children:n?`${n.name} (${n.id.slice(0,8)})`:g("createDrawer.selectParent")}),(0,b.jsx)(I.ChevronsUpDown,{className:"ms-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,b.jsx)(L.PopoverContent,{className:"w-80 p-0",align:"start","data-testid":"parent-feature-combobox-content",children:(0,b.jsxs)("div",{className:"flex flex-col",children:[(0,b.jsx)("div",{className:"border-b p-2",children:(0,b.jsx)(K.Input,{ref:m,placeholder:g("createDrawer.searchFeatures"),value:k,onChange:a=>l(a.target.value),className:"h-8 border-0 p-0 text-sm shadow-none focus-visible:ring-0","data-testid":"parent-feature-search"})}),(0,b.jsxs)("div",{className:"max-h-48 overflow-y-auto py-1",role:"listbox","aria-label":"Features",children:[(0,b.jsxs)("button",{type:"button",role:"option","aria-selected":void 0===d,onClick:()=>p(void 0),className:(0,x.cn)("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm",void 0===d&&"bg-accent/50"),"data-testid":"parent-feature-option-none",children:[(0,b.jsx)(J.CheckIcon,{className:(0,x.cn)("h-4 w-4 shrink-0",void 0!==d&&"invisible")}),(0,b.jsx)("span",{className:"text-muted-foreground italic",children:g("createDrawer.noParent")})]}),0===o.length&&k?(0,b.jsx)("p",{className:"text-muted-foreground px-3 py-2 text-sm",children:g("createDrawer.noFeaturesFound")}):o.map(a=>(0,b.jsxs)("button",{type:"button",role:"option","aria-selected":d===a.id,onClick:()=>p(a.id),className:(0,x.cn)("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm",d===a.id&&"bg-accent/50"),"data-testid":`parent-feature-option-${a.id}`,children:[(0,b.jsx)(J.CheckIcon,{className:(0,x.cn)("h-4 w-4 shrink-0",d!==a.id&&"invisible")}),(0,b.jsxs)("span",{className:"truncate",children:[a.name," ",(0,b.jsxs)("span",{className:"text-muted-foreground font-mono text-xs",children:["(",a.id.slice(0,8),")"]})]})]},a.id))]})]})})]})}var N=a.i(31271),O=a.i(20901),P=a.i(13126),Q=a.i(21333),R=a.i(85217),S=a.i(1377);a.i(21434);var T=a.i(34379);function U({repositories:a,value:d,onChange:e,onAddRepository:f,disabled:g}){let[i,j]=(0,c.useState)(!1),[k,l]=(0,c.useState)(""),[m,n]=(0,c.useState)(!1),[o,p]=(0,c.useState)(null),[q,r]=(0,c.useState)(!1),s=(0,c.useRef)(null),{reactFileManager:t}=(0,Q.useFeatureFlags)(),{t:u}=(0,h.useTranslation)("web"),v=a.find(a=>a.path===d),w=k.trim()?a.filter(a=>a.name.toLowerCase().includes(k.toLowerCase())||a.path.toLowerCase().includes(k.toLowerCase())):a,y=(0,c.useCallback)(a=>{e(a),j(!1),l("")},[e]),z=(0,c.useCallback)(async a=>{let b=await (0,R.addRepository)({path:a});if(b.error){p(b.error),n(!1);return}if(b.repository){let a={id:b.repository.id,name:b.repository.name,path:b.repository.path};f?.(a),e(a.path),j(!1),l("")}},[f,e]),A=(0,c.useCallback)(async()=>{if(!m){if(t)return void r(!0);n(!0),p(null);try{let a=await (0,S.pickFolder)();if(!a)return void n(!1);await z(a)}catch{r(!0)}finally{n(!1)}}},[m,t,z]),B=(0,c.useCallback)(async a=>{if(r(!1),a){n(!0),p(null);try{await z(a)}catch(a){p(a instanceof Error?a.message:"Failed to add repository")}finally{n(!1)}}},[z]);return(0,c.useEffect)(()=>{i?setTimeout(()=>s.current?.focus(),0):l("")},[i]),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(L.Popover,{open:i,onOpenChange:j,children:[(0,b.jsx)(L.PopoverTrigger,{asChild:!0,children:(0,b.jsxs)("button",{type:"button",role:"combobox","aria-expanded":i,"aria-label":"Repository","aria-invalid":!!o,"aria-describedby":o?"add-repository-error-msg":void 0,disabled:g,"data-testid":"repository-combobox",className:(0,x.cn)("border-input bg-background ring-offset-background focus:ring-ring flex h-9 w-full items-center justify-between rounded-md border px-3 py-2 text-sm focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",!v&&"text-muted-foreground"),children:[(0,b.jsx)("span",{className:"truncate",children:v?v.name:"Select repository..."}),(0,b.jsx)(I.ChevronsUpDown,{className:"ms-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,b.jsx)(L.PopoverContent,{className:"w-80 p-0",align:"start","data-testid":"repository-combobox-content",children:(0,b.jsxs)("div",{className:"flex flex-col",children:[(0,b.jsx)("div",{className:"border-b p-2",children:(0,b.jsx)(K.Input,{ref:s,placeholder:u("createDrawer.searchRepositories"),value:k,onChange:a=>l(a.target.value),className:"h-8 border-0 p-0 text-sm shadow-none focus-visible:ring-0","data-testid":"repository-search"})}),(0,b.jsx)("div",{className:"max-h-48 overflow-y-auto py-1",role:"listbox","aria-label":"Repositories",children:0===w.length?(0,b.jsx)("p",{className:"text-muted-foreground px-3 py-2 text-sm","data-testid":"repository-empty",children:"No repositories found."}):w.map(a=>(0,b.jsxs)("button",{type:"button",role:"option","aria-selected":d===a.path,onClick:()=>y(a.path),className:(0,x.cn)("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm",d===a.path&&"bg-accent/50"),"data-testid":`repository-option-${a.id}`,children:[(0,b.jsx)(J.CheckIcon,{className:(0,x.cn)("h-4 w-4 shrink-0",d!==a.path&&"invisible")}),(0,b.jsxs)("span",{className:"flex flex-col items-start truncate",children:[(0,b.jsx)("span",{className:"truncate",children:a.name}),(0,b.jsx)("span",{className:"text-muted-foreground truncate text-xs",children:a.path})]})]},a.id))}),(0,b.jsx)(P.Separator,{}),(0,b.jsxs)("button",{type:"button",onClick:A,disabled:m,className:"hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm","data-testid":"add-repository-item",children:[m?(0,b.jsx)(O.LoaderCircle,{className:"h-4 w-4 shrink-0 animate-spin"}):(0,b.jsx)(N.FolderPlus,{className:"h-4 w-4 shrink-0"}),(0,b.jsx)("span",{children:"Add new repository..."})]}),o?(0,b.jsx)("p",{id:"add-repository-error-msg",className:"px-3 pb-2 text-xs text-red-500",role:"alert","data-testid":"add-repository-error",children:o}):null]})})]}),(0,b.jsx)(T.ReactFileManagerDialog,{open:q,onOpenChange:a=>{a||r(!1)},onSelect:B})]})}function V({open:a,onClose:d,onSubmit:e,repositoryPath:f,isSubmitting:g=!1,workflowDefaults:u,features:v,repositories:w,initialParentId:x,currentAgentType:y,currentModel:z,initialDescription:A,canPushDirectly:B}){let{t:D}=(0,h.useTranslation)("web"),E=function({open:a,onClose:b,onSubmit:d,repositoryPath:e,workflowDefaults:f,repositories:g,initialParentId:h,currentAgentType:i,currentModel:j,initialDescription:k,canPushDirectly:l}){let m=(0,o.useSoundAction)("create"),n=e&&(!g||0===g.length||g.some(a=>a.path===e))?e:"",u=f?.approvalGates??t,v=f?.push??!1,w=f?.openPr??!1,x=f?.ciWatchEnabled!==!1,y=f?.enableEvidence??!1,z=f?.commitEvidence??!1,A=f?.fast!==!1,[B,C]=(0,c.useState)(k??"");(0,c.useEffect)(()=>{k&&C(k)},[k]);let[D,E]=(0,c.useState)([]),[F,G]=(0,c.useState)({...u}),[H,I]=(0,c.useState)(v),[J,K]=(0,c.useState)(w),[L,M]=(0,c.useState)(f?.ciWatchEnabled!==!1),[N,O]=(0,c.useState)(y),[P,Q]=(0,c.useState)(z),[R,S]=(0,c.useState)(void 0),[T,U]=(0,c.useState)(A),[V,W]=(0,c.useState)(!1),[X,Y]=(0,c.useState)(!1),[Z,$]=(0,c.useState)(!0),[_,aa]=(0,c.useState)(!0),[ab,ac]=(0,c.useState)(void 0),[ad,ae]=(0,c.useState)(void 0),[af,ag]=(0,c.useState)(n||void 0),[ah,ai]=(0,c.useState)(g??[]),[aj,ak]=(0,c.useState)(!1),[al,am]=(0,c.useState)(null),[an,ao]=(0,c.useState)(!1),ap=(0,c.useRef)(crypto.randomUUID()),aq=(0,c.useRef)(0);(0,c.useEffect)(()=>{f&&(G({...f.approvalGates}),I(f.push),K(f.openPr),M(!1!==f.ciWatchEnabled),O(f.enableEvidence),Q(f.commitEvidence),U(!1!==f.fast))},[f]),(0,c.useEffect)(()=>{ai(g??[])},[g]),(0,c.useEffect)(()=>{a&&h&&S(h)},[a,h]);let[ar,as]=(0,c.useState)(l??!1);(0,c.useEffect)(()=>{as(l??!1)},[l]);let at=(0,c.useRef)(af);(0,c.useEffect)(()=>{af&&af!==at.current&&(at.current=af,q(af).then(a=>as(a.canPushDirectly)).catch(()=>as(!1)))},[af]),(0,c.useEffect)(()=>{ar&&(Y(!1),I(v),K(w),$(!0))},[ar,v,w]);let au=(0,c.useCallback)(()=>{C(""),E([]),G({...u}),I(v),K(w),M(x),O(y),Q(z),S(void 0),ag(n||void 0),ai(g??[]),U(A),W(!1),Y(!1),$(!0),aa(!0),ac(void 0),ae(void 0),am(null),aq.current=0,ak(!1)},[u,v,w,y,x,z,A,n,g]),av=""!==B.trim()||D.length>0,{attemptClose:aw}=(0,p.useGuardedDrawerClose)({open:a,isDirty:av,onClose:b,onReset:au}),ax=(0,c.useCallback)(async a=>{for(let b of(am(null),a)){if(b.size>0xa00000)return void am(`"${b.name}" exceeds 10 MB limit`);let a=function(a){let b=a.lastIndexOf(".");return b>=0?a.slice(b).toLowerCase():""}(b.name);if(a&&!s.has(a))return void am(`File type "${a}" is not allowed`)}for(let b of a){let a=crypto.randomUUID();E(c=>[...c,{id:a,name:b.name,size:b.size,mimeType:b.type||"application/octet-stream",path:"",loading:!0}]);try{let c=new FormData;c.append("file",b),c.append("sessionId",ap.current);let d=await fetch("/api/attachments/upload",{method:"POST",body:c});if(!d.ok){let b=await d.json().catch(()=>({error:"Upload failed"}));E(b=>b.filter(b=>b.id!==a)),am(b.error??"Upload failed");return}let e=await d.json();E(b=>b.some(b=>b.id!==a&&b.path===e.path)?b.filter(b=>b.id!==a):b.map(b=>b.id===a?{...e,id:a,loading:!1}:b))}catch{E(b=>b.filter(b=>b.id!==a)),am("Upload failed")}}},[]),ay=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),aq.current+=1,1===aq.current&&ak(!0)},[]),az=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),aq.current-=1,0===aq.current&&ak(!1)},[]),aA=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation()},[]),aB=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),aq.current=0,ak(!1);let b=Array.from(a.dataTransfer.files);b.length>0&&ax(b)},[ax]),aC=(0,c.useCallback)(a=>{let b=a.clipboardData?.items;if(!b)return;let c=[];for(let a of Array.from(b))if("file"===a.kind){let b=a.getAsFile();b&&c.push(b)}c.length>0&&(a.preventDefault(),ax(c))},[ax]),aD=(0,c.useCallback)(a=>{if(a.preventDefault(),!B.trim())return;let b=af??n;b&&(m.play(),d({description:B.trim(),attachments:D.filter(a=>!a.loading),repositoryPath:b,approvalGates:{allowPrd:F.allowPrd??!1,allowPlan:F.allowPlan??!1,allowMerge:F.allowMerge??!1},push:!!X||H||J,openPr:!!X||J,ciWatchEnabled:L,enableEvidence:N,commitEvidence:P,fast:T,forkAndPr:X,commitSpecs:Z,rebaseBeforeBranch:_,...V?{pending:V}:{},...ab?{agentType:ab}:{},...ad?{model:ad}:{},...R?{parentId:R}:{},sessionId:ap.current}),au())},[B,D,F,af,n,d,H,J,N,L,P,T,X,Z,_,V,ab,ad,R,m,au]),aE=(0,c.useCallback)(async()=>{try{let a=await (0,r.pickFiles)();if(!a)return;for(let b of a){let a=crypto.randomUUID();E(c=>[...c,{id:a,name:b.name,size:b.size,mimeType:"application/octet-stream",path:"",loading:!0}]);try{let c=await fetch("/api/attachments/upload-from-path",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:b.path,sessionId:ap.current})});if(!c.ok){let b=await c.json().catch(()=>({error:"Upload failed"}));E(b=>b.filter(b=>b.id!==a)),am(b.error??"Upload failed");return}let d=await c.json();E(b=>b.some(b=>b.id!==a&&b.path===d.path)?b.filter(b=>b.id!==a):b.map(b=>b.id===a?{...d,id:a,loading:!1}:b))}catch{E(b=>b.filter(b=>b.id!==a)),am("Upload failed")}}}catch{}},[]),aF=(0,c.useCallback)(a=>{E(b=>b.filter(b=>b.id!==a))},[]),aG=(0,c.useCallback)((a,b)=>{E(c=>c.map(c=>c.id===a?{...c,notes:b}:c))},[]);return{validRepoPath:n,canPush:ar,isDirty:av,computedPush:!!X||H||J,computedOpenPr:!!X||J,description:B,setDescription:C,attachments:D,approvalGates:F,setApprovalGates:G,push:H,setPush:I,openPr:J,setOpenPr:K,ciWatchEnabled:L,setCiWatchEnabled:M,enableEvidence:N,setEnableEvidence:O,commitEvidence:P,setCommitEvidence:Q,parentId:R,setParentId:S,fast:T,setFast:U,pending:V,setPending:W,forkAndPr:X,setForkAndPr:Y,commitSpecs:Z,setCommitSpecs:$,rebaseBeforeBranch:_,setRebaseBeforeBranch:aa,overrideAgent:ab,setOverrideAgent:ac,overrideModel:ad,setOverrideModel:ae,selectedRepoPath:af,setSelectedRepoPath:ag,localRepos:ah,setLocalRepos:ai,isDragOver:aj,uploadError:al,isPromptFocused:an,setIsPromptFocused:ao,sessionIdRef:ap,currentAgentType:i,currentModel:j,attemptClose:aw,handleFiles:ax,handleDragEnter:ay,handleDragLeave:az,handleDragOver:aA,handleDrop:aB,handlePaste:aC,handleSubmit:aD,handleAddFiles:aE,handleRemoveFile:aF,handleNotesChange:aG,resetForm:au}}({open:a,onClose:d,onSubmit:e,repositoryPath:f,workflowDefaults:u,repositories:w,initialParentId:x,currentAgentType:y,currentModel:z,initialDescription:A,canPushDirectly:B}),F=(0,c.useRef)(null),G=(0,c.useCallback)(a=>{(a.ctrlKey||a.metaKey)&&"Enter"===a.key&&(a.preventDefault(),F.current?.requestSubmit())},[]),I=v&&v.length>0,J=!E.validRepoPath&&void 0!==w,K=!E.validRepoPath&&!E.selectedRepoPath;return(0,b.jsx)(i.BaseDrawer,{open:a,onClose:E.attemptClose,size:"md",modal:!1,dismissOnOutsideClick:!0,"data-testid":"feature-create-drawer",header:(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("div",{className:"h-2.5 w-2.5 shrink-0 rounded-full bg-blue-500"}),(0,b.jsx)(j.DrawerTitle,{children:D("createDrawer.title")})]}),g?(0,b.jsx)(j.DrawerDescription,{asChild:!0,children:(0,b.jsx)("div",{children:(0,b.jsx)(m.Badge,{variant:"secondary",children:D("createDrawer.creating")})})}):null]}),footer:(0,b.jsxs)("div",{className:"flex flex-row justify-end gap-2",children:[(0,b.jsx)(k.Button,{variant:"outline",onClick:E.attemptClose,disabled:g,children:D("createDrawer.cancel")}),(0,b.jsx)(k.Button,{type:"submit",form:"create-feature-form",disabled:!E.description.trim()||g||K,children:D(g?"createDrawer.creating":"createDrawer.createFeature")})]}),children:(0,b.jsx)("div",{className:"overflow-y-auto p-4",children:(0,b.jsx)(n.TooltipProvider,{delayDuration:400,children:(0,b.jsxs)("form",{ref:F,id:"create-feature-form",onSubmit:E.handleSubmit,onKeyDown:G,className:"flex flex-col gap-4",children:[J?(0,b.jsxs)("div",{className:"flex flex-col gap-1.5","data-testid":"repo-selector-section",children:[(0,b.jsx)(l.Label,{className:"text-muted-foreground text-xs font-semibold tracking-wider",children:D("createDrawer.repository")}),(0,b.jsx)(U,{repositories:E.localRepos,value:E.selectedRepoPath,onChange:E.setSelectedRepoPath,onAddRepository:a=>{E.setLocalRepos(b=>[...b,a]),E.setSelectedRepoPath(a.path)},disabled:g})]}):E.validRepoPath?(0,b.jsxs)("div",{className:"flex flex-col gap-1.5","data-testid":"repo-readonly-section",children:[(0,b.jsx)(l.Label,{className:"text-muted-foreground text-xs font-semibold tracking-wider",children:D("createDrawer.repository")}),(0,b.jsx)("p",{className:"text-sm","data-testid":"repo-readonly-label",children:w?.find(a=>a.path===E.validRepoPath)?.name??E.validRepoPath.split("/").pop()})]}):null,(0,b.jsx)(C,{description:E.description,onDescriptionChange:E.setDescription,attachments:E.attachments,onRemoveFile:E.handleRemoveFile,onNotesChange:E.handleNotesChange,onPaste:E.handlePaste,onDragEnter:E.handleDragEnter,onDragLeave:E.handleDragLeave,onDragOver:E.handleDragOver,onDrop:E.handleDrop,onAddFiles:E.handleAddFiles,isDragOver:E.isDragOver,uploadError:E.uploadError,isPromptFocused:E.isPromptFocused,onPromptFocus:()=>E.setIsPromptFocused(!0),onPromptBlur:()=>E.setIsPromptFocused(!1),fast:E.fast,onFastChange:E.setFast,pending:E.pending,onPendingChange:E.setPending,overrideAgent:E.overrideAgent,overrideModel:E.overrideModel,currentAgentType:y,currentModel:z,onAgentModelChange:(a,b)=>{E.setOverrideAgent(a),E.setOverrideModel(b)},isSubmitting:g}),I&&void 0!==x?(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)(l.Label,{htmlFor:"parent-feature",className:"text-muted-foreground text-xs font-semibold tracking-wider",children:D("createDrawer.parentFeature")}),(0,b.jsx)(M,{features:v,value:E.parentId,onChange:E.setParentId,disabled:g})]}):null,(0,b.jsx)(H,{approvalGates:E.approvalGates,onApprovalGatesChange:E.setApprovalGates,enableEvidence:E.enableEvidence,onEnableEvidenceChange:E.setEnableEvidence,commitEvidence:E.commitEvidence,onCommitEvidenceChange:E.setCommitEvidence,push:E.push,onPushChange:E.setPush,openPr:E.openPr,onOpenPrChange:E.setOpenPr,ciWatchEnabled:E.ciWatchEnabled,onCiWatchChange:E.setCiWatchEnabled,rebaseBeforeBranch:E.rebaseBeforeBranch,onRebaseBeforeBranchChange:E.setRebaseBeforeBranch,commitSpecs:E.commitSpecs,onCommitSpecsChange:E.setCommitSpecs,forkAndPr:E.forkAndPr,onForkAndPrChange:E.setForkAndPr,canPush:E.canPush,fast:E.fast,computedPush:E.computedPush,computedOpenPr:E.computedOpenPr,isSubmitting:g})]})})})})}a.s(["CreateDrawerClient",0,function({repositoryPath:a,initialParentId:f,initialDescription:h,features:i,repositories:j,workflowDefaults:k,currentAgentType:l,currentModel:m,canPushDirectly:n}){let o=(0,d.useRouter)(),[p,q]=(0,c.useState)(!1),r=(0,d.usePathname)().startsWith("/create"),s=!p&&r;(0,c.useEffect)(()=>{!r&&p&&q(!1)},[r,p]);let t=(0,c.useCallback)(()=>{o.push("/")},[o]),u=(0,c.useCallback)(a=>{q(!0),o.push("/"),g(a).then(b=>{b.error?e.toast.error(b.error):window.dispatchEvent(new CustomEvent("shipit-ai:feature-created",{detail:{featureId:b.feature.id,name:b.feature.name,description:b.feature.description,repositoryPath:b.feature.repositoryPath,parentId:a.parentId}}))}).catch(()=>{e.toast.error("Failed to create feature"),q(!1)})},[o]);return(0,b.jsx)(V,{open:s,onClose:t,onSubmit:u,repositoryPath:a,features:i,repositories:j,workflowDefaults:k,initialParentId:f,initialDescription:h,isSubmitting:p,currentAgentType:l,currentModel:m,canPushDirectly:n})}],93995)}];
2
2
 
3
3
  //# sourceMappingURL=0j.8_web_components_common_control-center-drawer_create-drawer-client_tsx_0g70fc5._.js.map