@shepai/cli 1.101.1 → 1.101.2-pr296.eaa08e7

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 (149) hide show
  1. package/dist/packages/core/src/infrastructure/repositories/sqlite-repository.repository.js +1 -1
  2. package/dist/src/presentation/web/app/api/agent-events/route.d.ts.map +1 -1
  3. package/dist/src/presentation/web/app/api/agent-events/route.js +7 -2
  4. package/dist/src/presentation/web/app/build-graph-nodes.d.ts.map +1 -1
  5. package/dist/src/presentation/web/app/build-graph-nodes.js +6 -1
  6. package/dist/src/presentation/web/components/common/repository-node/repository-node-config.d.ts +2 -0
  7. package/dist/src/presentation/web/components/common/repository-node/repository-node-config.d.ts.map +1 -1
  8. package/dist/src/presentation/web/components/features/control-center/use-control-center-state.d.ts.map +1 -1
  9. package/dist/src/presentation/web/components/features/control-center/use-control-center-state.js +7 -1
  10. package/dist/src/presentation/web/hooks/use-graph-state.d.ts.map +1 -1
  11. package/dist/src/presentation/web/hooks/use-graph-state.js +24 -0
  12. package/dist/src/presentation/web/lib/derive-graph.d.ts.map +1 -1
  13. package/dist/src/presentation/web/lib/derive-graph.js +9 -2
  14. package/dist/src/presentation/web/lib/layout-with-dagre.d.ts +2 -2
  15. package/dist/src/presentation/web/lib/layout-with-dagre.d.ts.map +1 -1
  16. package/dist/src/presentation/web/lib/layout-with-dagre.js +34 -35
  17. package/dist/tsconfig.build.tsbuildinfo +1 -1
  18. package/package.json +1 -1
  19. package/web/.next/BUILD_ID +1 -1
  20. package/web/.next/build-manifest.json +2 -2
  21. package/web/.next/fallback-build-manifest.json +2 -2
  22. package/web/.next/prerender-manifest.json +3 -3
  23. package/web/.next/required-server-files.js +3 -3
  24. package/web/.next/required-server-files.json +3 -3
  25. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +20 -20
  26. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  27. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  28. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +25 -25
  29. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  30. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  31. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +25 -25
  32. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  33. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  34. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +18 -18
  35. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  36. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  37. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +20 -20
  38. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  39. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  40. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +25 -25
  41. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  42. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  43. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +25 -25
  44. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  45. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  46. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +18 -18
  47. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  48. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  49. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +18 -18
  50. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  51. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  52. package/web/.next/server/app/_global-error.html +2 -2
  53. package/web/.next/server/app/_global-error.rsc +1 -1
  54. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  55. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  56. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  57. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  58. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  59. package/web/.next/server/app/_not-found/page/server-reference-manifest.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 +5 -5
  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 +6 -6
  65. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  66. package/web/.next/server/app/tools/page/server-reference-manifest.json +6 -6
  67. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  68. package/web/.next/server/app/version/page/server-reference-manifest.json +1 -1
  69. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  70. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js +1 -1
  71. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js.map +1 -1
  72. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  73. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  74. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_c757eb00.js +1 -1
  75. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_c757eb00.js.map +1 -1
  76. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_7eb49631.js +1 -1
  77. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_7eb49631.js.map +1 -1
  78. package/web/.next/server/chunks/ssr/[root-of-the-server]__0b6bb4ae._.js +1 -1
  79. package/web/.next/server/chunks/ssr/[root-of-the-server]__0b6bb4ae._.js.map +1 -1
  80. package/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js +1 -1
  81. package/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js.map +1 -1
  82. package/web/.next/server/chunks/ssr/[root-of-the-server]__24dd0927._.js +2 -2
  83. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  84. package/web/.next/server/chunks/ssr/[root-of-the-server]__5d87af2e._.js +1 -1
  85. package/web/.next/server/chunks/ssr/[root-of-the-server]__6a82177d._.js +1 -1
  86. package/web/.next/server/chunks/ssr/[root-of-the-server]__6a82177d._.js.map +1 -1
  87. package/web/.next/server/chunks/ssr/[root-of-the-server]__845a9d2a._.js +1 -1
  88. package/web/.next/server/chunks/ssr/[root-of-the-server]__845a9d2a._.js.map +1 -1
  89. package/web/.next/server/chunks/ssr/[root-of-the-server]__89e8a5cc._.js +2 -2
  90. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +2 -2
  91. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js.map +1 -1
  92. package/web/.next/server/chunks/ssr/[root-of-the-server]__ec9a1550._.js +1 -1
  93. package/web/.next/server/chunks/ssr/[root-of-the-server]__ec9a1550._.js.map +1 -1
  94. package/web/.next/server/chunks/ssr/[root-of-the-server]__f8932d55._.js +1 -1
  95. package/web/.next/server/chunks/ssr/[root-of-the-server]__f8932d55._.js.map +1 -1
  96. package/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js +1 -1
  97. package/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js.map +1 -1
  98. package/web/.next/server/chunks/ssr/_135edb9c._.js +1 -1
  99. package/web/.next/server/chunks/ssr/_135edb9c._.js.map +1 -1
  100. package/web/.next/server/chunks/ssr/{_a71a214c._.js → _23f357f4._.js} +2 -2
  101. package/web/.next/server/chunks/ssr/{_a71a214c._.js.map → _23f357f4._.js.map} +1 -1
  102. package/web/.next/server/chunks/ssr/_6e08ce21._.js +1 -1
  103. package/web/.next/server/chunks/ssr/_6e08ce21._.js.map +1 -1
  104. package/web/.next/server/chunks/ssr/_8dacd1e7._.js +1 -1
  105. package/web/.next/server/chunks/ssr/_8dacd1e7._.js.map +1 -1
  106. package/web/.next/server/chunks/ssr/_cc77a143._.js +1 -1
  107. package/web/.next/server/chunks/ssr/_cc77a143._.js.map +1 -1
  108. package/web/.next/server/chunks/ssr/{_a4809c63._.js → _df3d70ea._.js} +2 -2
  109. package/web/.next/server/chunks/ssr/{_a4809c63._.js.map → _df3d70ea._.js.map} +1 -1
  110. package/web/.next/server/chunks/ssr/{_e2b3790e._.js → _fa12eedc._.js} +2 -2
  111. package/web/.next/server/chunks/ssr/{_e2b3790e._.js.map → _fa12eedc._.js.map} +1 -1
  112. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  113. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  114. package/web/.next/server/chunks/ssr/src_presentation_web_3c53a23d._.js +2 -2
  115. package/web/.next/server/chunks/ssr/src_presentation_web_3c53a23d._.js.map +1 -1
  116. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_befd865a.js +1 -1
  117. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_befd865a.js.map +1 -1
  118. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js +1 -1
  119. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js.map +1 -1
  120. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js +1 -1
  121. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js.map +1 -1
  122. package/web/.next/server/chunks/ssr/src_presentation_web_app_(dashboard)_get-graph-data_ts_b018483e._.js +1 -1
  123. package/web/.next/server/chunks/ssr/src_presentation_web_app_(dashboard)_get-graph-data_ts_b018483e._.js.map +1 -1
  124. package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js +1 -1
  125. package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js +1 -1
  126. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
  127. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  128. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  129. package/web/.next/server/chunks/ssr/src_presentation_web_ec8c7a4f._.js +2 -2
  130. package/web/.next/server/chunks/ssr/src_presentation_web_ec8c7a4f._.js.map +1 -1
  131. package/web/.next/server/pages/500.html +2 -2
  132. package/web/.next/server/server-reference-manifest.js +1 -1
  133. package/web/.next/server/server-reference-manifest.json +30 -30
  134. package/web/.next/static/chunks/11d8fda1ec0bbea3.js +1 -0
  135. package/web/.next/static/chunks/{1a5e3b6ce431e740.js → 35c748481bdf2881.js} +2 -2
  136. package/web/.next/static/chunks/{0a2448451d734be0.js → 3c9bd1867e8105e6.js} +1 -1
  137. package/web/.next/static/chunks/{3abc20f8097a5aee.js → 83d33de8ad6ce6f8.js} +1 -1
  138. package/web/.next/static/chunks/{8973b9ec73f4bb86.js → 94faf0b1ca78aea8.js} +1 -1
  139. package/web/.next/static/chunks/{a46c51efe1c957c9.js → bc91048c4dcee562.js} +1 -1
  140. package/web/.next/static/chunks/{0639ce0a2347d886.js → c1a3bd34f0379725.js} +1 -1
  141. package/web/.next/static/chunks/{dd026ec520c1f2fc.js → c1e7a93e1a6e5b1e.js} +1 -1
  142. package/web/.next/static/chunks/{a7bddf19d135b976.js → d517927fd4726845.js} +1 -1
  143. package/web/.next/static/chunks/fab1d45fdc6e98b6.js +1 -0
  144. package/web/.next/static/chunks/{0c703c64afd43ef2.js → fed2903602f8c6c4.js} +2 -2
  145. package/web/.next/static/chunks/57a0bdac3a48ea32.js +0 -1
  146. package/web/.next/static/chunks/8cb3809188350912.js +0 -1
  147. /package/web/.next/static/{rKUKX7asiNPagVDGB3TC1 → Ko8yjftjBxQGKlrbqIGnz}/_buildManifest.js +0 -0
  148. /package/web/.next/static/{rKUKX7asiNPagVDGB3TC1 → Ko8yjftjBxQGKlrbqIGnz}/_clientMiddlewareManifest.json +0 -0
  149. /package/web/.next/static/{rKUKX7asiNPagVDGB3TC1 → Ko8yjftjBxQGKlrbqIGnz}/_ssgManifest.js +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "node": {
3
- "009ebd0df76eb0e978279e70af8f8a80c9203d78ee": {
3
+ "00324ebc5e49e1eb4ebe2ff1c3762167aa7aed1008": {
4
4
  "workers": {
5
5
  "app/(dashboard)/@drawer/create/page": {
6
6
  "moduleId": 49433,
@@ -106,7 +106,7 @@
106
106
  "filename": "src/presentation/web/app/actions/pick-folder.ts",
107
107
  "exportedName": "pickFolder"
108
108
  },
109
- "40b3685a2d1c935716de28b4878f2e984b5eeb90c9": {
109
+ "40c0ded2bf86341320e204fac7948ced4383af55e1": {
110
110
  "workers": {
111
111
  "app/(dashboard)/@drawer/create/page": {
112
112
  "moduleId": 49433,
@@ -191,7 +191,7 @@
191
191
  "filename": "src/presentation/web/app/actions/get-deployment-logs.ts",
192
192
  "exportedName": "getDeploymentLogs"
193
193
  },
194
- "404f9a7b942c3d3138ff570fa3a05ce690bd2b4bb0": {
194
+ "405c6e1464d15385f914bc0ac1ad3075dfaecf5c99": {
195
195
  "workers": {
196
196
  "app/(dashboard)/@drawer/create/page": {
197
197
  "moduleId": 49433,
@@ -276,7 +276,7 @@
276
276
  "filename": "src/presentation/web/app/actions/deploy-feature.ts",
277
277
  "exportedName": "deployFeature"
278
278
  },
279
- "406389933c86d7c4985f6af70526fe4a20ace289e3": {
279
+ "40f3cc6f4af8873a746034555722ed90b7ebe8537f": {
280
280
  "workers": {
281
281
  "app/(dashboard)/@drawer/create/page": {
282
282
  "moduleId": 49433,
@@ -361,7 +361,7 @@
361
361
  "filename": "src/presentation/web/app/actions/deploy-repository.ts",
362
362
  "exportedName": "deployRepository"
363
363
  },
364
- "407652672e58ef00877bb83acb864ceb5a693f4932": {
364
+ "4070e0b9033d4dd40a344254cceebcd59a8dde9b54": {
365
365
  "workers": {
366
366
  "app/(dashboard)/@drawer/create/page": {
367
367
  "moduleId": 49433,
@@ -446,7 +446,7 @@
446
446
  "filename": "src/presentation/web/app/actions/stop-deployment.ts",
447
447
  "exportedName": "stopDeployment"
448
448
  },
449
- "4082f9fda9b249ef2255bb1efb16dddae7ab6b3bfe": {
449
+ "40e58b5cb5001e01b97492ca341bf58236cf53b664": {
450
450
  "workers": {
451
451
  "app/(dashboard)/@drawer/create/page": {
452
452
  "moduleId": 49433,
@@ -531,7 +531,7 @@
531
531
  "filename": "src/presentation/web/app/actions/get-deployment-status.ts",
532
532
  "exportedName": "getDeploymentStatus"
533
533
  },
534
- "40e9ff3a33d82caf61fc03979e071a7713772c32fe": {
534
+ "40c47907e89ce31881886bcc9e721b6819096ff557": {
535
535
  "workers": {
536
536
  "app/(dashboard)/@drawer/create/page": {
537
537
  "moduleId": 49433,
@@ -602,7 +602,7 @@
602
602
  "filename": "src/presentation/web/app/actions/open-ide.ts",
603
603
  "exportedName": "openIde"
604
604
  },
605
- "40eff5652479d49a61837c66bf5902a805e37c6679": {
605
+ "40bb77f6c4a2cf98c7635685119b6c2f76e41d63b1": {
606
606
  "workers": {
607
607
  "app/(dashboard)/@drawer/create/page": {
608
608
  "moduleId": 49433,
@@ -673,7 +673,7 @@
673
673
  "filename": "src/presentation/web/app/actions/open-shell.ts",
674
674
  "exportedName": "openShell"
675
675
  },
676
- "409494d55f8e8e3063cc5d6e7545db52750502d6a2": {
676
+ "40b5f7caac69931aa3bf5248f4a30ad25f1dcfbbfa": {
677
677
  "workers": {
678
678
  "app/(dashboard)/@drawer/create/page": {
679
679
  "moduleId": 49433,
@@ -744,7 +744,7 @@
744
744
  "filename": "src/presentation/web/app/actions/open-folder.ts",
745
745
  "exportedName": "openFolder"
746
746
  },
747
- "00af128b88fe041a090cf4b68b0b41a3db079b8736": {
747
+ "008f4d1d19d7ddc600856a649186ecd6a88b863007": {
748
748
  "workers": {
749
749
  "app/(dashboard)/@drawer/create/page": {
750
750
  "moduleId": 49433,
@@ -815,7 +815,7 @@
815
815
  "filename": "src/presentation/web/app/actions/agent-setup-flag.ts",
816
816
  "exportedName": "isAgentSetupComplete"
817
817
  },
818
- "005340196cc15a673106deba1dd7024a98605f0dbd": {
818
+ "00f0ef6310dec7daecbfdcb7c00cc4407be751a382": {
819
819
  "workers": {
820
820
  "app/(dashboard)/@drawer/create/page": {
821
821
  "moduleId": 49433,
@@ -893,7 +893,7 @@
893
893
  "filename": "src/presentation/web/app/actions/get-all-agent-models.ts",
894
894
  "exportedName": "getAllAgentModels"
895
895
  },
896
- "408d0523966cd1cb2439d86f80e73ae31bc5cee49c": {
896
+ "409eb2e6a5b95af733dabca9b902dfe529f7e469fa": {
897
897
  "workers": {
898
898
  "app/(dashboard)/@drawer/create/page": {
899
899
  "moduleId": 49433,
@@ -964,7 +964,7 @@
964
964
  "filename": "src/presentation/web/app/actions/check-agent-tool.ts",
965
965
  "exportedName": "checkAgentTool"
966
966
  },
967
- "60ae89b064702a69224239a3e0c8e41d9ca205ba2b": {
967
+ "60d0b012662701217ae6f6575b44c2afb64f7cf896": {
968
968
  "workers": {
969
969
  "app/(dashboard)/@drawer/create/page": {
970
970
  "moduleId": 49433,
@@ -1042,7 +1042,7 @@
1042
1042
  "filename": "src/presentation/web/app/actions/update-agent-and-model.ts",
1043
1043
  "exportedName": "updateAgentAndModel"
1044
1044
  },
1045
- "601644d62f1d65aaebdb8d7b40d1b8f5057205e255": {
1045
+ "60651a0f3a74176f2fef1f7d1632237ffe976795be": {
1046
1046
  "workers": {
1047
1047
  "app/(dashboard)/@drawer/create/page": {
1048
1048
  "moduleId": 49433,
@@ -1113,7 +1113,7 @@
1113
1113
  "filename": "src/presentation/web/app/actions/delete-feature.ts",
1114
1114
  "exportedName": "deleteFeature"
1115
1115
  },
1116
- "40f985dfc18dde94847876322656cef3d7af2fff3d": {
1116
+ "40f63c5c27dcfda964e70265d9e929802678db3dba": {
1117
1117
  "workers": {
1118
1118
  "app/(dashboard)/@drawer/create/page": {
1119
1119
  "moduleId": 49433,
@@ -1184,7 +1184,7 @@
1184
1184
  "filename": "src/presentation/web/app/actions/add-repository.ts",
1185
1185
  "exportedName": "addRepository"
1186
1186
  },
1187
- "406be3b08f59578153c7d1cc5a0f095a3c197d4220": {
1187
+ "40a07b410a53d596180fe0eef32e690eb82ff6e20e": {
1188
1188
  "workers": {
1189
1189
  "app/(dashboard)/@drawer/create/page": {
1190
1190
  "moduleId": 49433,
@@ -1255,7 +1255,7 @@
1255
1255
  "filename": "src/presentation/web/app/actions/delete-repository.ts",
1256
1256
  "exportedName": "deleteRepository"
1257
1257
  },
1258
- "40e80e867e91d1478fe39a09fcb699b9f3bc2b7990": {
1258
+ "408c291648cc0078067d5b85ca542f4a0f5581467c": {
1259
1259
  "workers": {
1260
1260
  "app/(dashboard)/@drawer/create/page": {
1261
1261
  "moduleId": 49433,
@@ -1326,7 +1326,7 @@
1326
1326
  "filename": "src/presentation/web/app/actions/get-feature-metadata.ts",
1327
1327
  "exportedName": "getFeatureMetadata"
1328
1328
  },
1329
- "00fdc8245cbd1e2f6a70126f1acdbfa379aab0eb8b": {
1329
+ "0093c5603e03c4b4aab50f5b209a1d4f30656f54b9": {
1330
1330
  "workers": {
1331
1331
  "app/(dashboard)/@drawer/create/page": {
1332
1332
  "moduleId": 49433,
@@ -1397,7 +1397,7 @@
1397
1397
  "filename": "src/presentation/web/app/actions/get-graph-data.ts",
1398
1398
  "exportedName": "fetchGraphData"
1399
1399
  },
1400
- "0086e3b2a51a82ba748b37fe69b6101aa60cc9fe43": {
1400
+ "00c765dcaed25f1d4bebf83f1022d4183535abbfcb": {
1401
1401
  "workers": {
1402
1402
  "app/(dashboard)/@drawer/create/page": {
1403
1403
  "moduleId": 49433,
@@ -1419,7 +1419,7 @@
1419
1419
  "filename": "src/presentation/web/app/actions/get-workflow-defaults.ts",
1420
1420
  "exportedName": "getWorkflowDefaults"
1421
1421
  },
1422
- "406a1c41f3003fa6ff3d4fae472dc703472a8b1b35": {
1422
+ "4011c9ecf06e87440d05b1ace76e44d3c8852cab81": {
1423
1423
  "workers": {
1424
1424
  "app/(dashboard)/@drawer/create/page": {
1425
1425
  "moduleId": 49433,
@@ -1441,7 +1441,7 @@
1441
1441
  "filename": "src/presentation/web/app/actions/create-feature.ts",
1442
1442
  "exportedName": "createFeature"
1443
1443
  },
1444
- "603d40658cc05aa821bca85d01b96222179014f4d0": {
1444
+ "6073846d0fb0ca73543cba1ba08abb7ec12bebb95d": {
1445
1445
  "workers": {
1446
1446
  "app/(dashboard)/@drawer/feature/[featureId]/[tab]/page": {
1447
1447
  "moduleId": 71535,
@@ -1477,7 +1477,7 @@
1477
1477
  "filename": "src/presentation/web/app/actions/approve-feature.ts",
1478
1478
  "exportedName": "approveFeature"
1479
1479
  },
1480
- "70bcf57e167a5ee29d7e00f5ee5f69f35b18ce43cc": {
1480
+ "705c205ed6fe14d3a3cda5cb1097a6173c30ee2cef": {
1481
1481
  "workers": {
1482
1482
  "app/(dashboard)/@drawer/feature/[featureId]/[tab]/page": {
1483
1483
  "moduleId": 71535,
@@ -1513,7 +1513,7 @@
1513
1513
  "filename": "src/presentation/web/app/actions/reject-feature.ts",
1514
1514
  "exportedName": "rejectFeature"
1515
1515
  },
1516
- "4060994cf9b971923fe2acd26916e3306fd119d54f": {
1516
+ "4068eaec9fac3b4160f80c62820b6209bd8545ebec": {
1517
1517
  "workers": {
1518
1518
  "app/(dashboard)/@drawer/feature/[featureId]/[tab]/page": {
1519
1519
  "moduleId": 71535,
@@ -1549,7 +1549,7 @@
1549
1549
  "filename": "src/presentation/web/app/actions/get-feature-artifact.ts",
1550
1550
  "exportedName": "getFeatureArtifact"
1551
1551
  },
1552
- "4098e714b21447ad7de468e75b59a325fc316d4f0b": {
1552
+ "401437a685095a9d8e3aee2eed1e7dcf08281f0e21": {
1553
1553
  "workers": {
1554
1554
  "app/(dashboard)/@drawer/feature/[featureId]/[tab]/page": {
1555
1555
  "moduleId": 71535,
@@ -1585,7 +1585,7 @@
1585
1585
  "filename": "src/presentation/web/app/actions/get-research-artifact.ts",
1586
1586
  "exportedName": "getResearchArtifact"
1587
1587
  },
1588
- "400f8a037a7c24d0c2d6e7eb0fda969029e62f9bca": {
1588
+ "407057d66a3c2526ee61cfea49c8bf8eb6f5b3d106": {
1589
1589
  "workers": {
1590
1590
  "app/(dashboard)/@drawer/feature/[featureId]/[tab]/page": {
1591
1591
  "moduleId": 71535,
@@ -1621,7 +1621,7 @@
1621
1621
  "filename": "src/presentation/web/app/actions/get-merge-review-data.ts",
1622
1622
  "exportedName": "getMergeReviewData"
1623
1623
  },
1624
- "40f59666d4a79d3c67dd12aa88cb736d57e4e656a6": {
1624
+ "408856cd2aa0034a9f6c0725d85917d40449bc071a": {
1625
1625
  "workers": {
1626
1626
  "app/(dashboard)/@drawer/feature/[featureId]/[tab]/page": {
1627
1627
  "moduleId": 71535,
@@ -1657,7 +1657,7 @@
1657
1657
  "filename": "src/presentation/web/app/actions/get-feature-phase-timings.ts",
1658
1658
  "exportedName": "getFeaturePhaseTimings"
1659
1659
  },
1660
- "40f1bc1d1805170e624d5c12f5025a51c53da42925": {
1660
+ "404ce767dde83ee9d160cd26849aa3ff5d816eaee5": {
1661
1661
  "workers": {
1662
1662
  "app/(dashboard)/@drawer/feature/[featureId]/[tab]/page": {
1663
1663
  "moduleId": 71535,
@@ -1693,7 +1693,7 @@
1693
1693
  "filename": "src/presentation/web/app/actions/get-feature-plan.ts",
1694
1694
  "exportedName": "getFeaturePlan"
1695
1695
  },
1696
- "001ddd7bc4894f6e781b8f0cac287cd4252f3c561f": {
1696
+ "009ce0e4ef2496ffa3db2e8fea082abb855b7995d1": {
1697
1697
  "workers": {
1698
1698
  "app/settings/page": {
1699
1699
  "moduleId": 67125,
@@ -1708,7 +1708,7 @@
1708
1708
  "filename": "src/presentation/web/app/actions/load-settings.ts",
1709
1709
  "exportedName": "loadSettings"
1710
1710
  },
1711
- "4004321d9288eaa1b8b9642fbe4fbb460e9dfee527": {
1711
+ "40ea72ecb6fe65f8a951a8f4cf4de52a4e7ff65f2c": {
1712
1712
  "workers": {
1713
1713
  "app/settings/page": {
1714
1714
  "moduleId": 67125,
@@ -1725,5 +1725,5 @@
1725
1725
  }
1726
1726
  },
1727
1727
  "edge": {},
1728
- "encryptionKey": "IqRz4RQYdA1kl60LpiH9gIwdjeCppdJBicthZwM1mRo="
1728
+ "encryptionKey": "danouf54KeDha8E1dk3KVblRfSy9Qvhe1YMpMX44NLI="
1729
1729
  }
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,93752,e=>{"use strict";let t=(0,e.i(3645).default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);e.s(["default",()=>t])},16868,48306,80436,28267,86254,50032,42076,e=>{"use strict";var t=e.i(3645);let r=(0,t.default)("paperclip",[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]]);e.s(["PaperclipIcon",()=>r],16868);var a=e.i(20314),o=e.i(31777);function s({className:e,...t}){return(0,a.jsx)("textarea",{"data-slot":"textarea",className:(0,o.cn)("placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input field-sizing-content min-h-[80px] w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...t})}e.s(["Textarea",()=>s],48306);var i=e.i(60253),n=e.i(15506),n=n,l=e.i(95230);e.s(["DownloadIcon",()=>l.default],80436);var l=l,d=e.i(2287),c=e.i(1693);e.s(["VisuallyHidden",0,c],28267);var c=c;let u=(0,t.default)("file",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]);var p=e.i(16298),p=p;let h=(0,t.default)("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);var m=e.i(93752),m=m;e.i(35364);let x=new Set([".png",".jpg",".jpeg",".gif",".svg",".webp",".ico",".bmp"]),f=new Set([".ts",".tsx",".js",".jsx",".json",".yaml",".yml",".xml",".html",".css",".md"]);function g(e){if(0===e)return"0 B";let t=Math.floor(Math.log(e)/Math.log(1024));return`${(e/Math.pow(1024,t)).toFixed(+(0!==t))} ${["B","KB","MB","GB"][t]}`}let b=new Set([".png",".jpg",".jpeg",".gif",".svg",".webp",".ico",".bmp"]);function v(e,t){let r=new URLSearchParams({path:e,mimeType:t});return`/api/attachments/preview?${r.toString()}`}function j({name:e,size:t,mimeType:r,path:s,onRemove:j,loading:w=!1,disabled:y=!1}){let C,k,N=(C=e.lastIndexOf("."))>=0?e.slice(C).toLowerCase():"",P=x.has(N)?h:".pdf"===N?p.default:f.has(N)?m.default:u,T=".pdf"===N?"bg-red-50 text-red-600":x.has(N)?"bg-blue-50 text-blue-600":f.has(N)?"bg-emerald-50 text-emerald-600":"bg-gray-50 text-gray-600",S=(k=e.lastIndexOf("."))>=0&&b.has(e.slice(k).toLowerCase());return w?(0,a.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-md border",children:(0,a.jsx)(n.default,{className:"text-muted-foreground h-5 w-5 animate-spin"})}):S?(0,a.jsxs)(d.Dialog,{children:[(0,a.jsxs)("div",{className:"group relative",children:[(0,a.jsx)(d.DialogTrigger,{asChild:!0,children:(0,a.jsx)("img",{src:v(s,r),alt:e,title:e,className:"h-12 w-12 cursor-pointer rounded-md border object-cover transition-opacity hover:opacity-80"})}),!y&&(0,a.jsx)("button",{type:"button",onClick:j,className:"absolute -top-1.5 -right-1.5 hidden h-5 w-5 cursor-pointer items-center justify-center rounded-full bg-black/70 text-white group-hover:flex","aria-label":`Remove ${e}`,children:(0,a.jsx)(i.X,{className:"h-3 w-3"})})]}),(0,a.jsxs)(d.DialogContent,{className:"max-w-3xl gap-0 overflow-hidden border-0 p-0 [&>button:last-child]:!cursor-pointer [&>button:last-child]:!rounded-full [&>button:last-child]:!bg-black/70 [&>button:last-child]:!p-1.5 [&>button:last-child]:!text-white [&>button:last-child]:!opacity-100 [&>button:last-child]:!shadow-lg [&>button:last-child]:!backdrop-blur-md [&>button:last-child]:hover:!bg-black/90",children:[(0,a.jsx)(c.Root,{children:(0,a.jsxs)(d.DialogTitle,{children:["Preview: ",e]})}),(0,a.jsx)("div",{className:"relative bg-black/90",children:(0,a.jsx)("img",{src:v(s,r),alt:e,className:"h-auto max-h-[70vh] w-full object-contain"})}),(0,a.jsxs)("div",{className:"bg-background flex items-center gap-3 px-4 py-3",children:[(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,a.jsx)("span",{className:"truncate text-sm font-medium",children:e}),(0,a.jsx)("span",{className:"text-muted-foreground text-xs",children:g(t)})]}),(0,a.jsx)("a",{href:v(s,r),download:e,className:"text-muted-foreground hover:text-foreground shrink-0 cursor-pointer rounded p-1.5 transition-colors","aria-label":`Download ${e}`,children:(0,a.jsx)(l.default,{className:"h-4 w-4"})})]})]})]}):(0,a.jsxs)("div",{className:"group relative flex items-center gap-2 rounded-full border py-1 pr-3 pl-2",children:[(0,a.jsx)("div",{className:(0,o.cn)("flex h-6 w-6 shrink-0 items-center justify-center rounded-full",T),children:(0,a.jsx)(P,{className:"h-3 w-3"})}),(0,a.jsx)("span",{className:"max-w-[120px] truncate text-sm",children:e}),(0,a.jsx)("span",{className:"text-muted-foreground text-xs",children:g(t)}),!y&&(0,a.jsx)("button",{type:"button",onClick:j,className:"absolute -top-1.5 -right-1.5 hidden h-5 w-5 cursor-pointer items-center justify-center rounded-full bg-black/70 text-white group-hover:flex","aria-label":`Remove ${e}`,children:(0,a.jsx)(i.X,{className:"h-3 w-3"})})]})}async function w(){let e=await fetch("/api/dialog/pick-files",{method:"POST"});if(!e.ok)throw Error("Failed to open file dialog");let t=await e.json();return t.cancelled?null:t.files}e.s(["AttachmentChip",()=>j],86254),e.s([],50032),e.s(["pickFiles",()=>w],42076)},90382,e=>{"use strict";var t=e.i(20314),r=e.i(79054),a=e.i(91967),o=e.i(5978),s=e.i(22528),i=e.i(53532),n=e.i(41687),l=e.i(56720),d=e.i(13123),c=e.i(52740),u=e.i(39979),p=e.i(85995),h=e.i(87620),m=e.i(86874),x=e.i(36589),f=e.i(73772),g=e.i(13044),b="Popover",[v,j]=(0,s.createContextScope)(b,[c.createPopperScope]),w=(0,c.createPopperScope)(),[y,C]=v(b),k=e=>{let{__scopePopover:a,children:o,open:s,defaultOpen:i,onOpenChange:n,modal:l=!1}=e,u=w(a),p=r.useRef(null),[h,m]=r.useState(!1),[f,g]=(0,x.useControllableState)({prop:s,defaultProp:i??!1,onChange:n,caller:b});return(0,t.jsx)(c.Root,{...u,children:(0,t.jsx)(y,{scope:a,contentId:(0,d.useId)(),triggerRef:p,open:f,onOpenChange:g,onOpenToggle:r.useCallback(()=>g(e=>!e),[g]),hasCustomAnchor:h,onCustomAnchorAdd:r.useCallback(()=>m(!0),[]),onCustomAnchorRemove:r.useCallback(()=>m(!1),[]),modal:l,children:o})})};k.displayName=b;var N="PopoverAnchor",P=r.forwardRef((e,a)=>{let{__scopePopover:o,...s}=e,i=C(N,o),n=w(o),{onCustomAnchorAdd:l,onCustomAnchorRemove:d}=i;return r.useEffect(()=>(l(),()=>d()),[l,d]),(0,t.jsx)(c.Anchor,{...n,...s,ref:a})});P.displayName=N;var T="PopoverTrigger",S=r.forwardRef((e,r)=>{let{__scopePopover:s,...i}=e,n=C(T,s),l=w(s),d=(0,o.useComposedRefs)(r,n.triggerRef),u=(0,t.jsx)(h.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":n.open,"aria-controls":n.contentId,"data-state":q(n.open),...i,ref:d,onClick:(0,a.composeEventHandlers)(e.onClick,n.onOpenToggle)});return n.hasCustomAnchor?u:(0,t.jsx)(c.Anchor,{asChild:!0,...l,children:u})});S.displayName=T;var R="PopoverPortal",[A,D]=v(R,{forceMount:void 0}),E=e=>{let{__scopePopover:r,forceMount:a,children:o,container:s}=e,i=C(R,r);return(0,t.jsx)(A,{scope:r,forceMount:a,children:(0,t.jsx)(p.Presence,{present:a||i.open,children:(0,t.jsx)(u.Portal,{asChild:!0,container:s,children:o})})})};E.displayName=R;var F="PopoverContent",O=r.forwardRef((e,r)=>{let a=D(F,e.__scopePopover),{forceMount:o=a.forceMount,...s}=e,i=C(F,e.__scopePopover);return(0,t.jsx)(p.Presence,{present:o||i.open,children:i.modal?(0,t.jsx)(I,{...s,ref:r}):(0,t.jsx)(M,{...s,ref:r})})});O.displayName=F;var z=(0,m.createSlot)("PopoverContent.RemoveScroll"),I=r.forwardRef((e,s)=>{let i=C(F,e.__scopePopover),n=r.useRef(null),l=(0,o.useComposedRefs)(s,n),d=r.useRef(!1);return r.useEffect(()=>{let e=n.current;if(e)return(0,f.hideOthers)(e)},[]),(0,t.jsx)(g.RemoveScroll,{as:z,allowPinchZoom:!0,children:(0,t.jsx)(L,{...e,ref:l,trapFocus:i.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,a.composeEventHandlers)(e.onCloseAutoFocus,e=>{e.preventDefault(),d.current||i.triggerRef.current?.focus()}),onPointerDownOutside:(0,a.composeEventHandlers)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,r=0===t.button&&!0===t.ctrlKey;d.current=2===t.button||r},{checkForDefaultPrevented:!1}),onFocusOutside:(0,a.composeEventHandlers)(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1})})})}),M=r.forwardRef((e,a)=>{let o=C(F,e.__scopePopover),s=r.useRef(!1),i=r.useRef(!1);return(0,t.jsx)(L,{...e,ref:a,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(s.current||o.triggerRef.current?.focus(),t.preventDefault()),s.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(s.current=!0,"pointerdown"===t.detail.originalEvent.type&&(i.current=!0));let r=t.target;o.triggerRef.current?.contains(r)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&i.current&&t.preventDefault()}})}),L=r.forwardRef((e,r)=>{let{__scopePopover:a,trapFocus:o,onOpenAutoFocus:s,onCloseAutoFocus:d,disableOutsidePointerEvents:u,onEscapeKeyDown:p,onPointerDownOutside:h,onFocusOutside:m,onInteractOutside:x,...f}=e,g=C(F,a),b=w(a);return(0,n.useFocusGuards)(),(0,t.jsx)(l.FocusScope,{asChild:!0,loop:!0,trapped:o,onMountAutoFocus:s,onUnmountAutoFocus:d,children:(0,t.jsx)(i.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:u,onInteractOutside:x,onEscapeKeyDown:p,onPointerDownOutside:h,onFocusOutside:m,onDismiss:()=>g.onOpenChange(!1),children:(0,t.jsx)(c.Content,{"data-state":q(g.open),role:"dialog",id:g.contentId,...b,...f,ref:r,style:{...f.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),U="PopoverClose",B=r.forwardRef((e,r)=>{let{__scopePopover:o,...s}=e,i=C(U,o);return(0,t.jsx)(h.Primitive.button,{type:"button",...s,ref:r,onClick:(0,a.composeEventHandlers)(e.onClick,()=>i.onOpenChange(!1))})});B.displayName=U;var $=r.forwardRef((e,r)=>{let{__scopePopover:a,...o}=e,s=w(a);return(0,t.jsx)(c.Arrow,{...s,...o,ref:r})});function q(e){return e?"open":"closed"}$.displayName="PopoverArrow",e.s(["Anchor",()=>P,"Arrow",()=>$,"Close",()=>B,"Content",()=>O,"Popover",()=>k,"PopoverAnchor",()=>P,"PopoverArrow",()=>$,"PopoverClose",()=>B,"PopoverContent",()=>O,"PopoverPortal",()=>E,"PopoverTrigger",()=>S,"Portal",()=>E,"Root",()=>k,"Trigger",()=>S,"createPopoverScope",()=>j],89920);var H=e.i(89920),H=H,G=e.i(31777);let _=H.Root,K=H.Trigger;H.Anchor;let V=r.forwardRef(({className:e,align:r="center",sideOffset:a=4,...o},s)=>(0,t.jsx)(H.Portal,{children:(0,t.jsx)(H.Content,{ref:s,align:r,sideOffset:a,className:(0,G.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 rounded-md border p-4 shadow-md outline-none",e),...o})}));V.displayName=H.Content.displayName,e.s(["Popover",()=>_,"PopoverContent",()=>V,"PopoverTrigger",()=>K],90382)},51911,e=>{"use strict";var t=e.i(20314),r=e.i(79054),a=e.i(91967),o=e.i(5978),s=e.i(22528),i=e.i(36589),n=e.i(23405),l=e.i(77624),d=e.i(87620),c="Switch",[u,p]=(0,s.createContextScope)(c),[h,m]=u(c),x=r.forwardRef((e,s)=>{let{__scopeSwitch:n,name:l,checked:u,defaultChecked:p,required:m,disabled:x,value:f="on",onCheckedChange:g,form:j,...w}=e,[y,C]=r.useState(null),k=(0,o.useComposedRefs)(s,e=>C(e)),N=r.useRef(!1),P=!y||j||!!y.closest("form"),[T,S]=(0,i.useControllableState)({prop:u,defaultProp:p??!1,onChange:g,caller:c});return(0,t.jsxs)(h,{scope:n,checked:T,disabled:x,children:[(0,t.jsx)(d.Primitive.button,{type:"button",role:"switch","aria-checked":T,"aria-required":m,"data-state":v(T),"data-disabled":x?"":void 0,disabled:x,value:f,...w,ref:k,onClick:(0,a.composeEventHandlers)(e.onClick,e=>{S(e=>!e),P&&(N.current=e.isPropagationStopped(),N.current||e.stopPropagation())})}),P&&(0,t.jsx)(b,{control:y,bubbles:!N.current,name:l,value:f,checked:T,required:m,disabled:x,form:j,style:{transform:"translateX(-100%)"}})]})});x.displayName=c;var f="SwitchThumb",g=r.forwardRef((e,r)=>{let{__scopeSwitch:a,...o}=e,s=m(f,a);return(0,t.jsx)(d.Primitive.span,{"data-state":v(s.checked),"data-disabled":s.disabled?"":void 0,...o,ref:r})});g.displayName=f;var b=r.forwardRef(({__scopeSwitch:e,control:a,checked:s,bubbles:i=!0,...d},c)=>{let u=r.useRef(null),p=(0,o.useComposedRefs)(u,c),h=(0,n.usePrevious)(s),m=(0,l.useSize)(a);return r.useEffect(()=>{let e=u.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(h!==s&&t){let r=new Event("click",{bubbles:i});t.call(e,s),e.dispatchEvent(r)}},[h,s,i]),(0,t.jsx)("input",{type:"checkbox","aria-hidden":!0,defaultChecked:s,...d,tabIndex:-1,ref:p,style:{...d.style,...m,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function v(e){return e?"checked":"unchecked"}b.displayName="SwitchBubbleInput",e.s(["Root",()=>x,"Switch",()=>x,"SwitchThumb",()=>g,"Thumb",()=>g,"createSwitchScope",()=>p],95291);var j=e.i(95291),j=j,w=e.i(31777);function y({className:e,size:r="default",...a}){return(0,t.jsx)(j.Root,{"data-slot":"switch","data-size":r,className:(0,w.cn)("peer group/switch focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80 inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6",e),...a,children:(0,t.jsx)(j.Thumb,{"data-slot":"switch-thumb",className:(0,w.cn)("bg-background dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground pointer-events-none block rounded-full ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")})})}e.s(["Switch",()=>y],51911)},41413,e=>{"use strict";var t=e.i(20314),r=e.i(79054),a=e.i(23925),o=e.i(11345),s=e.i(76016),i=e.i(70749),n=e.i(53964),l=e.i(86782),d=e.i(29847),c=e.i(35364),u=e.i(90382),p=e.i(31777);function h({initialAgentType:e,initialModel:h,onAgentModelChange:m,disabled:x,className:f,mode:g}){let[b,v]=r.useState(!1),[j,w]=r.useState([]),[y,C]=r.useState(!0),[k,N]=r.useState(e),[P,T]=r.useState(h),[S,R]=r.useState(null),[A,D]=r.useState(0),[E,F]=r.useState(null);r.useEffect(()=>{(0,i.getAllAgentModels)().then(w).finally(()=>C(!1))},[]),r.useEffect(()=>{if(!b){let e=setTimeout(()=>{D(0),F(null)},150);return()=>clearTimeout(e)}},[b]);let O=async(e,t)=>{if(v(!1),e!==k||t!==P){if("override"===g){N(e),T(t),m?.(e,t);return}N(e),T(t),m?.(e,t),R(null);try{let r=await (0,n.updateAgentAndModel)(e,t||null);r.ok||(N(k),T(P),m?.(k,P),R(r.error??"Failed to save"))}catch{N(k),T(P),m?.(k,P),R("Failed to save")}}},z=(0,l.getAgentTypeIcon)(k),I=j.find(e=>e.agentType===k)?.label??k,M=P?(0,d.getModelMeta)(P).displayName||P:null,L=E?j.find(e=>e.agentType===E):null;return(0,t.jsxs)("div",{className:(0,p.cn)("flex flex-col gap-1",f),children:[(0,t.jsxs)(u.Popover,{open:b,onOpenChange:v,children:[(0,t.jsx)(u.PopoverTrigger,{asChild:!0,children:(0,t.jsx)(c.Button,{variant:"outline",role:"combobox","aria-expanded":b,disabled:(x??!1)||y,className:"w-auto cursor-pointer justify-start font-normal hover:border-violet-300 hover:bg-violet-50/50 dark:hover:border-violet-700 dark:hover:bg-violet-950/30",children:(0,t.jsxs)("span",{className:"flex items-center gap-2 truncate",children:[(0,t.jsx)(z,{className:"h-4 w-4 shrink-0"}),y?"Loading…":(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:I}),M?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-muted-foreground/50 text-xs",children:"·"}),(0,t.jsx)("span",{className:"text-xs font-medium",children:M})]}):null]})]})})}),(0,t.jsx)(u.PopoverContent,{className:"w-(--radix-popover-trigger-width) overflow-hidden p-0",align:"start",children:(0,t.jsxs)("div",{className:"flex transition-transform duration-200 ease-in-out",style:{transform:`translateX(${1===A?"-50%":"0%"})`,width:"200%"},children:[(0,t.jsxs)("div",{className:"w-1/2 shrink-0",children:[(0,t.jsx)("div",{className:"text-muted-foreground border-b px-3 py-2 text-xs font-medium",children:"Select agent"}),j.map(e=>{let r=(0,l.getAgentTypeIcon)(e.agentType),o=k===e.agentType,i=e.models.length>0;return(0,t.jsxs)("button",{type:"button",className:(0,p.cn)("flex w-full cursor-pointer items-center gap-2.5 px-3 py-2 text-xs transition-colors","hover:bg-accent hover:text-accent-foreground",o&&"bg-accent/50"),onClick:()=>{i?(F(e.agentType),requestAnimationFrame(()=>{requestAnimationFrame(()=>D(1))})):O(e.agentType,"")},children:[(0,t.jsx)(r,{className:"h-4 w-4 shrink-0"}),(0,t.jsx)("span",{className:"flex-1 text-left",children:e.label}),o&&!i?(0,t.jsx)(a.Check,{className:"text-primary h-3.5 w-3.5 shrink-0"}):null,i?(0,t.jsx)(s.ChevronRight,{className:"text-muted-foreground h-3.5 w-3.5 shrink-0"}):null]},e.agentType)})]}),(0,t.jsx)("div",{className:"w-1/2 shrink-0",children:L?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("button",{type:"button",className:"text-muted-foreground hover:text-foreground flex w-full cursor-pointer items-center gap-1.5 border-b px-3 py-2 text-xs font-medium transition-colors",onClick:()=>{D(0),setTimeout(()=>F(null),220)},children:[(0,t.jsx)(o.ChevronLeft,{className:"h-3.5 w-3.5"}),L.label]}),L.models.map(e=>{let r=k===L.agentType&&P===e.id;return(0,t.jsxs)("button",{type:"button",className:(0,p.cn)("flex w-full cursor-pointer items-center gap-3 px-3 py-2 text-left transition-colors","hover:bg-accent hover:text-accent-foreground",r&&"bg-accent/50"),onClick:()=>O(L.agentType,e.id),children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,t.jsx)("span",{className:"text-xs font-medium",children:e.displayName}),(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:e.description})]}),r?(0,t.jsx)(a.Check,{className:"text-primary h-3.5 w-3.5 shrink-0"}):null]},e.id)})]}):null})]})})]}),!!S&&(0,t.jsx)("p",{className:"text-destructive text-sm",children:S})]})}e.s(["AgentModelPicker",()=>h])},15203,e=>{"use strict";var t=e.i(20314),r=e.i(79054),a=e.i(31406),o=e.i(60112),s=e.i(21023);let i=(0,s.createServerReference)("4011c9ecf06e87440d05b1ace76e44d3c8852cab81",s.callServer,void 0,s.findSourceMapURL,"createFeature");var n=e.i(16868);let l=(0,e.i(3645).default)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]);var d=e.i(97667),c=e.i(53360),u=e.i(31777),p=e.i(8361);e.i(1650);var h=e.i(11495),m=e.i(45811),x=e.i(35364),f=e.i(98127),g=e.i(48306),b=e.i(41957),v=e.i(81846),j=e.i(90382),w=e.i(51911),y=e.i(2828),C=e.i(30153);e.i(50032);var k=e.i(86254),N=e.i(41413),P=e.i(42076);let T=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"]),S=[{id:"allowPrd",label:"PRD",description:"Auto-approve requirements move to planning."},{id:"allowPlan",label:"Plan",description:"Auto-approve planning move to implementation."},{id:"allowMerge",label:"Merge",description:"Auto-approve merge move to Done."}],R={allowPrd:!1,allowPlan:!1,allowMerge:!1};function A({open:e,onClose:a,onSubmit:o,repositoryPath:s,isSubmitting:i=!1,workflowDefaults:l,features:d,initialParentId:f,currentAgentType:j,currentModel:A}){let E=(0,p.useSoundAction)("create"),F=l?.approvalGates??R,O=l?.push??!1,z=l?.openPr??!1,I=l?.enableEvidence??!1,M=l?.commitEvidence??!1,[L,U]=(0,r.useState)(""),[B,$]=(0,r.useState)([]),[q,H]=(0,r.useState)({...F}),[G,_]=(0,r.useState)(O),[K,V]=(0,r.useState)(z),[X,W]=(0,r.useState)(I),[Z,J]=(0,r.useState)(M),[Y,Q]=(0,r.useState)(void 0),[ee,et]=(0,r.useState)(!1),[er,ea]=(0,r.useState)(void 0),[eo,es]=(0,r.useState)(void 0),[ei,en]=(0,r.useState)(!1),[el,ed]=(0,r.useState)(null),[ec,eu]=(0,r.useState)(!1),ep=(0,r.useRef)(crypto.randomUUID()),eh=(0,r.useRef)(0),em=(0,r.useRef)(null);(0,r.useEffect)(()=>{l&&(H({...l.approvalGates}),_(l.push),V(l.openPr),W(l.enableEvidence),J(l.commitEvidence))},[l]),(0,r.useEffect)(()=>{e&&f&&Q(f)},[e,f]);let ex=(0,r.useCallback)(()=>{U(""),$([]),H({...F}),_(O),V(z),W(I),J(M),Q(void 0),et(!1),ea(void 0),es(void 0),ed(null),eh.current=0,en(!1)},[F,O,z,I,M]),ef=""!==L.trim()||B.length>0,{attemptClose:eg}=(0,C.useGuardedDrawerClose)({open:e,isDirty:ef,onClose:a,onReset:ex}),eb=(0,r.useCallback)(async e=>{for(let t of(ed(null),e)){if(t.size>0xa00000)return void ed(`"${t.name}" exceeds 10 MB limit`);let e=function(e){let t=e.lastIndexOf(".");return t>=0?e.slice(t).toLowerCase():""}(t.name);if(e&&!T.has(e))return void ed(`File type "${e}" is not allowed`)}for(let t of e){let e=crypto.randomUUID();$(r=>[...r,{id:e,name:t.name,size:t.size,mimeType:t.type||"application/octet-stream",path:"",loading:!0}]);try{let r=new FormData;r.append("file",t),r.append("sessionId",ep.current);let a=await fetch("/api/attachments/upload",{method:"POST",body:r});if(!a.ok){let t=await a.json().catch(()=>({error:"Upload failed"}));$(t=>t.filter(t=>t.id!==e)),ed(t.error??"Upload failed");return}let o=await a.json();$(t=>t.some(t=>t.id!==e&&t.path===o.path)?t.filter(t=>t.id!==e):t.map(t=>t.id===e?{...o,id:e,loading:!1}:t))}catch{$(t=>t.filter(t=>t.id!==e)),ed("Upload failed")}}},[]),ev=(0,r.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),eh.current+=1,1===eh.current&&en(!0)},[]),ej=(0,r.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),eh.current-=1,0===eh.current&&en(!1)},[]),ew=(0,r.useCallback)(e=>{e.preventDefault(),e.stopPropagation()},[]),ey=(0,r.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),eh.current=0,en(!1);let t=Array.from(e.dataTransfer.files);t.length>0&&eb(t)},[eb]),eC=(0,r.useCallback)(e=>{let t=e.clipboardData?.items;if(!t)return;let r=[];for(let e of Array.from(t))if("file"===e.kind){let t=e.getAsFile();t&&r.push(t)}r.length>0&&(e.preventDefault(),eb(r))},[eb]),ek=(0,r.useCallback)(e=>{e.preventDefault(),L.trim()&&(E.play(),o({description:L.trim(),attachments:B.filter(e=>!e.loading),repositoryPath:s,approvalGates:{allowPrd:q.allowPrd??!1,allowPlan:q.allowPlan??!1,allowMerge:q.allowMerge??!1},push:G||K,openPr:K,enableEvidence:X,commitEvidence:Z,fast:ee,...er?{agentType:er}:{},...eo?{model:eo}:{},...Y?{parentId:Y}:{},sessionId:ep.current}),ex())},[L,B,q,s,o,G,K,X,Z,ee,er,eo,Y,E,ex]),eN=(0,r.useCallback)(async()=>{try{let e=await (0,P.pickFiles)();if(!e)return;for(let t of e){let e=crypto.randomUUID();$(r=>[...r,{id:e,name:t.name,size:t.size,mimeType:"application/octet-stream",path:"",loading:!0}]);try{let r=await fetch("/api/attachments/upload-from-path",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t.path,sessionId:ep.current})});if(!r.ok){let t=await r.json().catch(()=>({error:"Upload failed"}));$(t=>t.filter(t=>t.id!==e)),ed(t.error??"Upload failed");return}let a=await r.json();$(t=>t.some(t=>t.id!==e&&t.path===a.path)?t.filter(t=>t.id!==e):t.map(t=>t.id===e?{...a,id:e,loading:!1}:t))}catch{$(t=>t.filter(t=>t.id!==e)),ed("Upload failed")}}}catch{}},[]),eP=(0,r.useCallback)(e=>{$(t=>t.filter(t=>t.id!==e))},[]),eT=(0,r.useRef)(null),eS=(0,r.useCallback)(e=>{(e.ctrlKey||e.metaKey)&&"Enter"===e.key&&(e.preventDefault(),eT.current?.requestSubmit())},[]),eR=(0,r.useCallback)(()=>{eu(!0)},[]),eA=(0,r.useCallback)(()=>{setTimeout(()=>{let e=em.current?.contains(document.activeElement),t=em.current?.querySelector('[aria-expanded="true"]')!==null;e||t||eu(!1)},0)},[]),eD=d&&d.length>0;return(0,t.jsx)(h.BaseDrawer,{open:e,onClose:eg,size:"md",modal:!1,dismissOnOutsideClick:!0,"data-testid":"feature-create-drawer",header:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"h-2.5 w-2.5 shrink-0 rounded-full bg-blue-500"}),(0,t.jsx)(m.DrawerTitle,{children:"NEW FEATURE"})]}),i?(0,t.jsx)(m.DrawerDescription,{asChild:!0,children:(0,t.jsx)("div",{children:(0,t.jsx)(v.Badge,{variant:"secondary",children:"Creating..."})})}):null]}),footer:(0,t.jsxs)("div",{className:"flex flex-row justify-end gap-2",children:[(0,t.jsx)(x.Button,{variant:"outline",onClick:eg,disabled:i,children:"Cancel"}),(0,t.jsx)(x.Button,{type:"submit",form:"create-feature-form",disabled:!L.trim()||i,children:i?"Creating...":"+ Create Feature"})]}),children:(0,t.jsx)("div",{className:"overflow-y-auto p-4",children:(0,t.jsx)(y.TooltipProvider,{delayDuration:400,children:(0,t.jsxs)("form",{ref:eT,id:"create-feature-form",onSubmit:ek,className:"flex flex-col gap-4",children:[(0,t.jsxs)("div",{role:"region","aria-label":"File drop zone","data-drag-over":ei?"true":"false",onDragEnter:ev,onDragLeave:ej,onDragOver:ew,onDrop:ey,className:(0,u.cn)("flex flex-col gap-1.5 rounded-md border-2 border-transparent p-1 transition-colors",ei&&"border-primary/50 bg-primary/5"),children:[(0,t.jsx)(b.Label,{htmlFor:"feature-description",className:"text-muted-foreground text-xs font-semibold tracking-wider",children:"DESCRIBE YOUR FEATURE"}),(0,t.jsxs)("div",{ref:em,onFocus:eR,onBlur:eA,className:(0,u.cn)("border-input flex h-56 flex-col overflow-hidden rounded-md border shadow-xs transition-[color,box-shadow]",ec&&"ring-ring/50 border-ring ring-[3px]"),children:[(0,t.jsx)(g.Textarea,{id:"feature-description",placeholder:"e.g. Add GitHub OAuth login with callback handling and token refresh...",value:L,onChange:e=>U(e.target.value),onKeyDown:eS,onPaste:eC,required:!0,disabled:i,className:"min-h-0 flex-1 resize-none rounded-none border-0 shadow-none focus-visible:ring-0"}),B.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap items-center gap-1.5 px-3 py-2",children:B.map(e=>(0,t.jsx)(k.AttachmentChip,{name:e.name,size:e.size,mimeType:e.mimeType,path:e.path,onRemove:()=>eP(e.id),disabled:i,loading:e.loading},e.id))}),el?(0,t.jsx)("p",{className:"text-destructive px-3 pb-2 text-xs",children:el}):null,(0,t.jsxs)("div",{className:"border-input flex items-center gap-3 border-t px-3 py-1.5",children:[(0,t.jsx)(N.AgentModelPicker,{initialAgentType:er??j??"claude-code",initialModel:eo??A??"claude-sonnet-4-6",mode:"override",onAgentModelChange:(e,t)=>{ea(e),es(t)},disabled:i,className:"w-55"}),(0,t.jsxs)(y.Tooltip,{children:[(0,t.jsx)(y.TooltipTrigger,{asChild:!0,children:(0,t.jsxs)("div",{className:"ml-auto flex cursor-pointer items-center gap-2",children:[(0,t.jsx)(w.Switch,{id:"fast-mode",checked:ee,onCheckedChange:et,disabled:i}),(0,t.jsxs)(b.Label,{htmlFor:"fast-mode",className:"flex cursor-pointer items-center gap-1 text-sm font-medium",children:[(0,t.jsx)(c.Zap,{className:"h-3.5 w-3.5"}),"Fast Mode"]})]})}),(0,t.jsx)(y.TooltipContent,{side:"bottom",children:"Skip SDLC phases and implement directly from your prompt."})]}),(0,t.jsxs)(y.Tooltip,{children:[(0,t.jsx)(y.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",onClick:eN,disabled:i,"aria-label":"Attach files",className:"text-muted-foreground hover:text-foreground cursor-pointer rounded p-1 transition-colors",children:(0,t.jsx)(n.PaperclipIcon,{className:"h-4 w-4"})})}),(0,t.jsx)(y.TooltipContent,{side:"bottom",children:"Attach files"})]})]})]})]}),eD&&void 0!==f?(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsx)(b.Label,{htmlFor:"parent-feature",className:"text-muted-foreground text-xs font-semibold tracking-wider",children:"PARENT FEATURE"}),(0,t.jsx)(D,{features:d,value:Y,onChange:Q,disabled:i})]}):null,(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsxs)("div",{className:"border-input flex items-center gap-4 rounded-md border px-3 py-2.5",children:[(0,t.jsxs)(y.Tooltip,{children:[(0,t.jsx)(y.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{className:"text-muted-foreground w-16 shrink-0 cursor-default text-xs font-semibold tracking-wider",children:"APPROVE"})}),(0,t.jsx)(y.TooltipContent,{side:"bottom",children:"Auto-approve phase transitions without manual review."})]}),(0,t.jsx)("div",{className:"flex flex-1 items-center gap-4",children:S.map(e=>(0,t.jsxs)(y.Tooltip,{children:[(0,t.jsx)(y.TooltipTrigger,{asChild:!0,children:(0,t.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,t.jsx)(w.Switch,{id:`approve-${e.id}`,size:"sm",checked:q[e.id]??!1,onCheckedChange:t=>H(r=>({...r,[e.id]:t})),disabled:i||ee&&("allowPrd"===e.id||"allowPlan"===e.id)}),(0,t.jsx)(b.Label,{htmlFor:`approve-${e.id}`,className:"cursor-pointer text-xs font-medium",children:e.label})]})}),(0,t.jsx)(y.TooltipContent,{side:"bottom",children:ee&&("allowPrd"===e.id||"allowPlan"===e.id)?"Skipped in Fast Mode":e.description})]},e.id))}),(0,t.jsxs)(y.Tooltip,{children:[(0,t.jsx)(y.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",onClick:()=>{let e=S.every(e=>q[e.id]),t={};for(let r of S)t[r.id]=!e;H(t)},disabled:i,className:(0,u.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",S.every(e=>q[e.id])&&"text-primary"),children:"All"})}),(0,t.jsx)(y.TooltipContent,{side:"bottom",children:"Toggle all approval gates"})]})]}),(0,t.jsxs)("div",{className:"border-input flex items-center gap-4 rounded-md border px-3 py-2.5",children:[(0,t.jsxs)(y.Tooltip,{children:[(0,t.jsx)(y.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{className:"text-muted-foreground w-16 shrink-0 cursor-default text-xs font-semibold tracking-wider",children:"EVIDENCE"})}),(0,t.jsx)(y.TooltipContent,{side:"bottom",children:"Collect and attach evidence after implementation."})]}),(0,t.jsxs)("div",{className:"flex flex-1 items-center gap-4",children:[(0,t.jsxs)(y.Tooltip,{children:[(0,t.jsx)(y.TooltipTrigger,{asChild:!0,children:(0,t.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,t.jsx)(w.Switch,{id:"enable-evidence",size:"sm",checked:X,onCheckedChange:e=>{W(e),e||J(!1)},disabled:i}),(0,t.jsx)(b.Label,{htmlFor:"enable-evidence",className:"cursor-pointer text-xs font-medium",children:"Collect"})]})}),(0,t.jsx)(y.TooltipContent,{side:"bottom",children:"Capture screenshots and artifacts after implementation."})]}),(0,t.jsxs)(y.Tooltip,{children:[(0,t.jsx)(y.TooltipTrigger,{asChild:!0,children:(0,t.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,t.jsx)(w.Switch,{id:"commit-evidence",size:"sm",checked:Z,onCheckedChange:J,disabled:i||!X||!K}),(0,t.jsx)(b.Label,{htmlFor:"commit-evidence",className:(0,u.cn)("cursor-pointer text-xs font-medium",(!X||!K)&&"opacity-50"),children:"Add to PR"})]})}),(0,t.jsx)(y.TooltipContent,{side:"bottom",children:K?X?"Include evidence in the pull request body.":"Requires evidence collection to be enabled":"Requires PR to be enabled"})]})]})]}),(0,t.jsxs)("div",{className:"border-input flex items-center gap-4 rounded-md border px-3 py-2.5",children:[(0,t.jsx)("span",{className:"text-muted-foreground w-16 shrink-0 text-xs font-semibold tracking-wider",children:"GIT"}),(0,t.jsxs)("div",{className:"flex flex-1 items-center gap-4",children:[(0,t.jsxs)(y.Tooltip,{children:[(0,t.jsx)(y.TooltipTrigger,{asChild:!0,children:(0,t.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,t.jsx)(w.Switch,{id:"push",size:"sm",checked:G||K,onCheckedChange:e=>{_(e),!e&&K&&V(!1)},disabled:i}),(0,t.jsx)(b.Label,{htmlFor:"push",className:"cursor-pointer text-xs font-medium",children:"Push"})]})}),(0,t.jsx)(y.TooltipContent,{side:"bottom",children:"Push branch to remote after implementation."})]}),(0,t.jsxs)(y.Tooltip,{children:[(0,t.jsx)(y.TooltipTrigger,{asChild:!0,children:(0,t.jsxs)("div",{className:"flex cursor-pointer items-center gap-1.5",children:[(0,t.jsx)(w.Switch,{id:"open-pr",size:"sm",checked:K,onCheckedChange:e=>{V(e),e||J(!1)},disabled:i}),(0,t.jsx)(b.Label,{htmlFor:"open-pr",className:"cursor-pointer text-xs font-medium",children:"PR"})]})}),(0,t.jsx)(y.TooltipContent,{side:"bottom",children:"Open a pull request after pushing."})]})]})]})]})]})})})})}function D({features:e,value:a,onChange:o,disabled:s}){let[i,n]=(0,r.useState)(!1),[c,p]=(0,r.useState)(""),h=(0,r.useRef)(null),m=e.find(e=>e.id===a),x=c.trim()?e.filter(e=>e.name.toLowerCase().includes(c.toLowerCase())||e.id.toLowerCase().includes(c.toLowerCase())):e,g=(0,r.useCallback)(e=>{o(e),n(!1),p("")},[o]);return(0,r.useEffect)(()=>{i?setTimeout(()=>h.current?.focus(),0):p("")},[i]),(0,t.jsxs)(j.Popover,{open:i,onOpenChange:n,children:[(0,t.jsx)(j.PopoverTrigger,{asChild:!0,children:(0,t.jsxs)("button",{id:"parent-feature",type:"button",role:"combobox","aria-expanded":i,"aria-label":"Parent Feature",disabled:s,"data-testid":"parent-feature-combobox",className:(0,u.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",!m&&"text-muted-foreground"),children:[(0,t.jsx)("span",{className:"truncate",children:m?`${m.name} (${m.id.slice(0,8)})`:"Select parent feature..."}),(0,t.jsx)(l,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,t.jsx)(j.PopoverContent,{className:"w-80 p-0",align:"start","data-testid":"parent-feature-combobox-content",children:(0,t.jsxs)("div",{className:"flex flex-col",children:[(0,t.jsx)("div",{className:"border-b p-2",children:(0,t.jsx)(f.Input,{ref:h,placeholder:"Search features...",value:c,onChange:e=>p(e.target.value),className:"h-8 border-0 p-0 text-sm shadow-none focus-visible:ring-0","data-testid":"parent-feature-search"})}),(0,t.jsxs)("div",{className:"max-h-48 overflow-y-auto py-1",role:"listbox","aria-label":"Features",children:[(0,t.jsxs)("button",{type:"button",role:"option","aria-selected":void 0===a,onClick:()=>g(void 0),className:(0,u.cn)("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm",void 0===a&&"bg-accent/50"),"data-testid":"parent-feature-option-none",children:[(0,t.jsx)(d.CheckIcon,{className:(0,u.cn)("h-4 w-4 shrink-0",void 0!==a&&"invisible")}),(0,t.jsx)("span",{className:"text-muted-foreground italic",children:"No parent"})]}),0===x.length&&c?(0,t.jsx)("p",{className:"text-muted-foreground px-3 py-2 text-sm",children:"No features found."}):x.map(e=>(0,t.jsxs)("button",{type:"button",role:"option","aria-selected":a===e.id,onClick:()=>g(e.id),className:(0,u.cn)("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm",a===e.id&&"bg-accent/50"),"data-testid":`parent-feature-option-${e.id}`,children:[(0,t.jsx)(d.CheckIcon,{className:(0,u.cn)("h-4 w-4 shrink-0",a!==e.id&&"invisible")}),(0,t.jsxs)("span",{className:"truncate",children:[e.name," ",(0,t.jsxs)("span",{className:"text-muted-foreground font-mono text-xs",children:["(",e.id.slice(0,8),")"]})]})]},e.id))]})]})})]})}function E({repositoryPath:e,initialParentId:s,features:n,workflowDefaults:l,currentAgentType:d,currentModel:c}){let u=(0,a.useRouter)(),[p,h]=(0,r.useState)(!1),m=(0,a.usePathname)().startsWith("/create"),x=!p&&m;(0,r.useEffect)(()=>{!m&&p&&h(!1)},[m,p]);let f=(0,r.useCallback)(()=>{u.push("/")},[u]),g=(0,r.useCallback)(e=>{h(!0),u.push("/"),i(e).then(t=>{t.error?o.toast.error(t.error):window.dispatchEvent(new CustomEvent("shep:feature-created",{detail:{featureId:t.feature.id,name:t.feature.name,description:t.feature.description,repositoryPath:t.feature.repositoryPath,parentId:e.parentId}}))}).catch(()=>{o.toast.error("Failed to create feature"),h(!1)})},[u]);return(0,t.jsx)(A,{open:x,onClose:f,onSubmit:g,repositoryPath:e,features:n,workflowDefaults:l,initialParentId:s,isSubmitting:p,currentAgentType:d,currentModel:c})}e.s(["CreateDrawerClient",()=>E],15203)}]);