@shepai/cli 1.170.0-pr513.cff27cb → 1.170.0

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 (413) hide show
  1. package/apis/json-schema/Feature.yaml +5 -17
  2. package/apis/json-schema/SdlcLifecycle.yaml +0 -1
  3. package/apis/json-schema/WorkflowConfig.yaml +5 -10
  4. package/dist/packages/core/src/application/ports/output/agents/feature-agent-process.interface.d.ts +2 -2
  5. package/dist/packages/core/src/application/ports/output/agents/feature-agent-process.interface.d.ts.map +1 -1
  6. package/dist/packages/core/src/application/ports/output/services/spec-initializer.interface.d.ts +3 -4
  7. package/dist/packages/core/src/application/ports/output/services/spec-initializer.interface.d.ts.map +1 -1
  8. package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.js +2 -2
  9. package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.js +2 -2
  10. package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.d.ts.map +1 -1
  11. package/dist/packages/core/src/application/use-cases/features/adopt-branch.use-case.js +2 -3
  12. package/dist/packages/core/src/application/use-cases/features/check-and-unblock-features.use-case.js +2 -2
  13. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.d.ts.map +1 -1
  14. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.js +7 -18
  15. package/dist/packages/core/src/application/use-cases/features/create/types.d.ts +2 -3
  16. package/dist/packages/core/src/application/use-cases/features/create/types.d.ts.map +1 -1
  17. package/dist/packages/core/src/application/use-cases/features/delete-feature.use-case.d.ts.map +1 -1
  18. package/dist/packages/core/src/application/use-cases/features/delete-feature.use-case.js +0 -13
  19. package/dist/packages/core/src/application/use-cases/features/resume-feature.use-case.js +2 -2
  20. package/dist/packages/core/src/application/use-cases/features/start-feature.use-case.d.ts.map +1 -1
  21. package/dist/packages/core/src/application/use-cases/features/start-feature.use-case.js +3 -5
  22. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  23. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -2
  24. package/dist/packages/core/src/domain/generated/output.d.ts +4 -22
  25. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  26. package/dist/packages/core/src/domain/generated/output.js +0 -7
  27. package/dist/packages/core/src/domain/lifecycle-gates.d.ts +6 -21
  28. package/dist/packages/core/src/domain/lifecycle-gates.d.ts.map +1 -1
  29. package/dist/packages/core/src/domain/lifecycle-gates.js +6 -25
  30. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  31. package/dist/packages/core/src/infrastructure/di/container.js +0 -5
  32. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts +1 -3
  33. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts.map +1 -1
  34. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.js +4 -10
  35. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +1 -2
  36. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  37. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +2 -7
  38. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.d.ts.map +1 -1
  39. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.js +3 -5
  40. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +3 -3
  41. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts +0 -20
  42. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts.map +1 -1
  43. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts +0 -68
  44. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts.map +1 -1
  45. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.d.ts +2 -2
  46. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.d.ts.map +1 -1
  47. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-process.service.js +3 -3
  48. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts +2 -2
  49. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts.map +1 -1
  50. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.js +8 -19
  51. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/lifecycle-context.d.ts.map +1 -1
  52. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/lifecycle-context.js +0 -1
  53. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.d.ts.map +1 -1
  54. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.js +0 -1
  55. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts +0 -4
  56. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts.map +1 -1
  57. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.js +0 -17
  58. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.d.ts +1 -1
  59. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.d.ts.map +1 -1
  60. package/dist/packages/core/src/infrastructure/services/spec/spec-initializer.service.js +4 -7
  61. package/dist/src/presentation/cli/commands/feat/index.d.ts.map +1 -1
  62. package/dist/src/presentation/cli/commands/feat/index.js +1 -5
  63. package/dist/src/presentation/cli/commands/feat/new.command.d.ts.map +1 -1
  64. package/dist/src/presentation/cli/commands/feat/new.command.js +5 -18
  65. package/dist/src/presentation/web/app/actions/create-feature.d.ts +2 -3
  66. package/dist/src/presentation/web/app/actions/create-feature.d.ts.map +1 -1
  67. package/dist/src/presentation/web/app/actions/create-feature.js +3 -3
  68. package/dist/src/presentation/web/app/actions/get-workflow-defaults.d.ts +1 -2
  69. package/dist/src/presentation/web/app/actions/get-workflow-defaults.d.ts.map +1 -1
  70. package/dist/src/presentation/web/app/actions/get-workflow-defaults.js +1 -2
  71. package/dist/src/presentation/web/app/api/agent-events/route.d.ts.map +1 -1
  72. package/dist/src/presentation/web/app/api/agent-events/route.js +0 -1
  73. package/dist/src/presentation/web/app/build-feature-node-data.d.ts.map +1 -1
  74. package/dist/src/presentation/web/app/build-feature-node-data.js +2 -4
  75. package/dist/src/presentation/web/app/build-graph-nodes.js +2 -4
  76. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts +1 -1
  77. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.d.ts.map +1 -1
  78. package/dist/src/presentation/web/components/common/control-center-drawer/drawer-view.js +0 -3
  79. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
  80. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +1 -65
  81. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts +2 -3
  82. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
  83. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +11 -15
  84. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.d.ts.map +1 -1
  85. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.js +1 -2
  86. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts +1 -6
  87. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
  88. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +4 -16
  89. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.d.ts.map +1 -1
  90. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.js +0 -2
  91. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts +2 -6
  92. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts.map +1 -1
  93. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.js +0 -12
  94. package/dist/src/presentation/web/components/common/feature-node/feature-node.d.ts.map +1 -1
  95. package/dist/src/presentation/web/components/common/feature-node/feature-node.js +2 -7
  96. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  97. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +6 -6
  98. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.stories.js +3 -3
  99. package/dist/translations/ar/cli.json +0 -24
  100. package/dist/translations/ar/web.json +2 -6
  101. package/dist/translations/de/cli.json +0 -24
  102. package/dist/translations/de/web.json +2 -6
  103. package/dist/translations/en/cli.json +0 -24
  104. package/dist/translations/en/web.json +2 -6
  105. package/dist/translations/es/cli.json +0 -24
  106. package/dist/translations/es/web.json +2 -6
  107. package/dist/translations/fr/cli.json +0 -24
  108. package/dist/translations/fr/web.json +2 -6
  109. package/dist/translations/he/cli.json +0 -24
  110. package/dist/translations/he/web.json +2 -6
  111. package/dist/translations/pt/cli.json +0 -24
  112. package/dist/translations/pt/web.json +2 -6
  113. package/dist/translations/ru/cli.json +0 -24
  114. package/dist/translations/ru/web.json +2 -6
  115. package/dist/tsconfig.build.tsbuildinfo +1 -1
  116. package/package.json +1 -1
  117. package/web/.next/BUILD_ID +1 -1
  118. package/web/.next/build-manifest.json +2 -2
  119. package/web/.next/fallback-build-manifest.json +2 -2
  120. package/web/.next/prerender-manifest.json +3 -3
  121. package/web/.next/required-server-files.js +3 -3
  122. package/web/.next/required-server-files.json +3 -3
  123. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +29 -29
  124. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  125. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  126. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +27 -27
  127. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  128. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  129. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +30 -30
  130. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  131. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  132. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +76 -121
  133. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +1 -2
  134. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  135. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  136. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +76 -121
  137. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +1 -2
  138. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  139. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  140. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  141. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  142. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  143. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  144. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  145. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  146. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +27 -27
  147. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  148. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  149. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +30 -30
  150. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  151. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  152. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +76 -121
  153. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +1 -2
  154. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  155. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  156. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +76 -121
  157. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +1 -2
  158. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  159. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  160. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +27 -27
  161. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  162. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  163. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  164. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  165. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  166. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  167. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  168. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  169. package/web/.next/server/app/_global-error.html +2 -2
  170. package/web/.next/server/app/_global-error.rsc +1 -1
  171. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  172. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  173. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  174. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  175. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  176. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +6 -6
  177. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  178. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  179. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  180. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  181. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  182. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
  183. package/web/.next/server/app/features/page/server-reference-manifest.json +6 -6
  184. package/web/.next/server/app/features/page.js.nft.json +1 -1
  185. package/web/.next/server/app/features/page_client-reference-manifest.js +1 -1
  186. package/web/.next/server/app/settings/page/server-reference-manifest.json +9 -9
  187. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  188. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  189. package/web/.next/server/app/skills/page/server-reference-manifest.json +13 -13
  190. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  191. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  192. package/web/.next/server/app/tools/page/server-reference-manifest.json +11 -11
  193. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  194. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  195. package/web/.next/server/app/version/page/server-reference-manifest.json +6 -6
  196. package/web/.next/server/app/version/page.js.nft.json +1 -1
  197. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  198. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js +1 -1
  199. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js.map +1 -1
  200. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js +1 -1
  201. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js.map +1 -1
  202. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  203. package/web/.next/server/chunks/[root-of-the-server]__c78383b1._.js +1 -1
  204. package/web/.next/server/chunks/[root-of-the-server]__c78383b1._.js.map +1 -1
  205. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js +1 -1
  206. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  207. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  208. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  209. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +3 -3
  210. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  211. package/web/.next/server/chunks/ssr/[root-of-the-server]__1cd4327c._.js +1 -1
  212. package/web/.next/server/chunks/ssr/[root-of-the-server]__1cd4327c._.js.map +1 -1
  213. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js +1 -1
  214. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js.map +1 -1
  215. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  216. package/web/.next/server/chunks/ssr/[root-of-the-server]__4ed9b909._.js +1 -1
  217. package/web/.next/server/chunks/ssr/[root-of-the-server]__4fb81977._.js +4 -0
  218. package/web/.next/server/chunks/ssr/[root-of-the-server]__4fb81977._.js.map +1 -0
  219. package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js +1 -1
  220. package/web/.next/server/chunks/ssr/[root-of-the-server]__684a868c._.js.map +1 -1
  221. package/web/.next/server/chunks/ssr/[root-of-the-server]__69dd3217._.js +1 -1
  222. package/web/.next/server/chunks/ssr/[root-of-the-server]__69dd3217._.js.map +1 -1
  223. package/web/.next/server/chunks/ssr/[root-of-the-server]__6c7d3936._.js +1 -1
  224. package/web/.next/server/chunks/ssr/[root-of-the-server]__6c7d3936._.js.map +1 -1
  225. package/web/.next/server/chunks/ssr/[root-of-the-server]__7dcd0917._.js +4 -0
  226. package/web/.next/server/chunks/ssr/[root-of-the-server]__7dcd0917._.js.map +1 -0
  227. package/web/.next/server/chunks/ssr/[root-of-the-server]__92ffd5ee._.js +2 -2
  228. package/web/.next/server/chunks/ssr/[root-of-the-server]__92ffd5ee._.js.map +1 -1
  229. package/web/.next/server/chunks/ssr/[root-of-the-server]__b020c17d._.js +2 -2
  230. package/web/.next/server/chunks/ssr/[root-of-the-server]__b020c17d._.js.map +1 -1
  231. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js +1 -1
  232. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js.map +1 -1
  233. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba7f5873._.js +4 -0
  234. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba7f5873._.js.map +1 -0
  235. package/web/.next/server/chunks/ssr/[root-of-the-server]__c1262d08._.js +1 -1
  236. package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js +1 -1
  237. package/web/.next/server/chunks/ssr/[root-of-the-server]__c16bf5de._.js.map +1 -1
  238. package/web/.next/server/chunks/ssr/[root-of-the-server]__c5e09f6f._.js +4 -0
  239. package/web/.next/server/chunks/ssr/[root-of-the-server]__c5e09f6f._.js.map +1 -0
  240. package/web/.next/server/chunks/ssr/[root-of-the-server]__fa525872._.js +3 -0
  241. package/web/.next/server/chunks/ssr/[root-of-the-server]__fa525872._.js.map +1 -0
  242. package/web/.next/server/chunks/ssr/_02e01240._.js +1 -1
  243. package/web/.next/server/chunks/ssr/_02e01240._.js.map +1 -1
  244. package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
  245. package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
  246. package/web/.next/server/chunks/ssr/{_0fd635d7._.js → _0d7dd23b._.js} +2 -2
  247. package/web/.next/server/chunks/ssr/_0d7dd23b._.js.map +1 -0
  248. package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
  249. package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
  250. package/web/.next/server/chunks/ssr/_18886033._.js +1 -1
  251. package/web/.next/server/chunks/ssr/_18886033._.js.map +1 -1
  252. package/web/.next/server/chunks/ssr/_22e00a14._.js +1 -1
  253. package/web/.next/server/chunks/ssr/_22e00a14._.js.map +1 -1
  254. package/web/.next/server/chunks/ssr/_45496654._.js +1 -1
  255. package/web/.next/server/chunks/ssr/_45496654._.js.map +1 -1
  256. package/web/.next/server/chunks/ssr/_4cbb7f95._.js +1 -1
  257. package/web/.next/server/chunks/ssr/_4cbb7f95._.js.map +1 -1
  258. package/web/.next/server/chunks/ssr/_5119a3df._.js +1 -1
  259. package/web/.next/server/chunks/ssr/_5119a3df._.js.map +1 -1
  260. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  261. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  262. package/web/.next/server/chunks/ssr/{_34d897da._.js → _77ae079a._.js} +2 -2
  263. package/web/.next/server/chunks/ssr/{_34d897da._.js.map → _77ae079a._.js.map} +1 -1
  264. package/web/.next/server/chunks/ssr/_a5a5901d._.js +1 -1
  265. package/web/.next/server/chunks/ssr/_a5a5901d._.js.map +1 -1
  266. package/web/.next/server/chunks/ssr/_a963dd3c._.js +3 -0
  267. package/web/.next/server/chunks/ssr/_a963dd3c._.js.map +1 -0
  268. package/web/.next/server/chunks/ssr/_ad09f271._.js +1 -1
  269. package/web/.next/server/chunks/ssr/_ad09f271._.js.map +1 -1
  270. package/web/.next/server/chunks/ssr/_c3f595c6._.js +1 -1
  271. package/web/.next/server/chunks/ssr/_c3f595c6._.js.map +1 -1
  272. package/web/.next/server/chunks/ssr/{_cac4abe6._.js → _deabc145._.js} +2 -2
  273. package/web/.next/server/chunks/ssr/_deabc145._.js.map +1 -0
  274. package/web/.next/server/chunks/ssr/_df737cce._.js +1 -1
  275. package/web/.next/server/chunks/ssr/_e3f14907._.js +9 -0
  276. package/web/.next/server/chunks/ssr/_e3f14907._.js.map +1 -0
  277. package/web/.next/server/chunks/ssr/_ea9e1556._.js +1 -1
  278. package/web/.next/server/chunks/ssr/_ea9e1556._.js.map +1 -1
  279. package/web/.next/server/chunks/ssr/_f1ba9be6._.js +2 -2
  280. package/web/.next/server/chunks/ssr/_f1ba9be6._.js.map +1 -1
  281. package/web/.next/server/chunks/ssr/_f33cd07e._.js +2 -2
  282. package/web/.next/server/chunks/ssr/_f33cd07e._.js.map +1 -1
  283. package/web/.next/server/chunks/ssr/_f8b45233._.js +1 -1
  284. package/web/.next/server/chunks/ssr/_f8b45233._.js.map +1 -1
  285. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  286. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  287. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
  288. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js.map +1 -1
  289. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
  290. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
  291. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +1 -1
  292. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +1 -1
  293. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -1
  294. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  295. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  296. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js +1 -1
  297. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js.map +1 -1
  298. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js +1 -1
  299. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js.map +1 -1
  300. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js +1 -1
  301. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js.map +1 -1
  302. package/web/.next/server/pages/500.html +2 -2
  303. package/web/.next/server/server-reference-manifest.js +1 -1
  304. package/web/.next/server/server-reference-manifest.json +202 -310
  305. package/web/.next/static/chunks/06a86173379e6c51.js +1 -0
  306. package/web/.next/static/chunks/16ed73f9880b7d63.js +1 -0
  307. package/web/.next/static/chunks/{e93ae5725b0babeb.js → 2b2f3a70ebd6ac1c.js} +1 -1
  308. package/web/.next/static/chunks/{37f9543560c58ea6.js → 3d1df5c349d855eb.js} +1 -1
  309. package/web/.next/static/chunks/{5e20f692bbfcfb94.js → 4559a403ee40dd19.js} +1 -1
  310. package/web/.next/static/chunks/74e5b5c7950efbc1.js +1 -0
  311. package/web/.next/static/chunks/{0f30a983f3467cd5.js → 7a6854bb07182777.js} +1 -1
  312. package/web/.next/static/chunks/{52681a7f14138e48.js → 8e12deeabf6624e9.js} +1 -1
  313. package/web/.next/static/chunks/9c6f8f49799efd3a.js +1 -0
  314. package/web/.next/static/chunks/{9a78b4c5dcd28196.js → a3802d6f8677cd04.js} +2 -2
  315. package/web/.next/static/chunks/{09a25231e5fc1ab8.js → b0a6fce5425f8d3a.js} +1 -1
  316. package/web/.next/static/chunks/b14085e99b88e7f7.css +1 -0
  317. package/web/.next/static/chunks/b65e555419a0c664.js +1 -0
  318. package/web/.next/static/chunks/{478adf5d5156f002.js → c5a0b452afc8fe47.js} +1 -1
  319. package/web/.next/static/chunks/ca23a8642f750548.js +5 -0
  320. package/web/.next/static/chunks/{2a9af061f4fbe7f5.js → d5366257d6b9f855.js} +1 -1
  321. package/web/.next/static/chunks/{fc595d95626ac9bb.js → f29814a72404ea2b.js} +1 -1
  322. package/web/.next/static/chunks/{0769c695d6b663c7.js → f51250616da82bd2.js} +1 -1
  323. package/web/.next/static/chunks/{4219ddfde68a6d0b.js → f9da308b3033c57a.js} +1 -1
  324. package/apis/json-schema/FeatureMode.yaml +0 -8
  325. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.d.ts +0 -40
  326. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.d.ts.map +0 -1
  327. package/dist/packages/core/src/application/use-cases/features/promote/promote-exploration.use-case.js +0 -125
  328. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.d.ts +0 -19
  329. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.d.ts.map +0 -1
  330. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/051-replace-fast-with-mode.js +0 -46
  331. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.d.ts +0 -17
  332. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.d.ts.map +0 -1
  333. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/052-replace-default-fast-mode-with-default-mode.js +0 -37
  334. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.d.ts +0 -12
  335. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.d.ts.map +0 -1
  336. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/053-add-exploration-max-iterations.js +0 -17
  337. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.d.ts +0 -362
  338. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.d.ts.map +0 -1
  339. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/exploration-agent-graph.js +0 -72
  340. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.d.ts +0 -18
  341. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.d.ts.map +0 -1
  342. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/apply-feedback.node.js +0 -52
  343. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.d.ts +0 -24
  344. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.d.ts.map +0 -1
  345. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/apply-feedback.prompt.js +0 -38
  346. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.d.ts +0 -31
  347. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.d.ts.map +0 -1
  348. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/prototype-generate.prompt.js +0 -240
  349. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.d.ts +0 -21
  350. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.d.ts.map +0 -1
  351. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prototype-generate.node.js +0 -134
  352. package/dist/src/presentation/cli/commands/feat/feedback.command.d.ts +0 -12
  353. package/dist/src/presentation/cli/commands/feat/feedback.command.d.ts.map +0 -1
  354. package/dist/src/presentation/cli/commands/feat/feedback.command.js +0 -64
  355. package/dist/src/presentation/cli/commands/feat/promote.command.d.ts +0 -13
  356. package/dist/src/presentation/cli/commands/feat/promote.command.d.ts.map +0 -1
  357. package/dist/src/presentation/cli/commands/feat/promote.command.js +0 -41
  358. package/dist/src/presentation/web/app/actions/discard-exploration.d.ts +0 -9
  359. package/dist/src/presentation/web/app/actions/discard-exploration.d.ts.map +0 -1
  360. package/dist/src/presentation/web/app/actions/discard-exploration.js +0 -29
  361. package/dist/src/presentation/web/app/actions/promote-exploration.d.ts +0 -11
  362. package/dist/src/presentation/web/app/actions/promote-exploration.d.ts.map +0 -1
  363. package/dist/src/presentation/web/app/actions/promote-exploration.js +0 -21
  364. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.d.ts +0 -12
  365. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.d.ts.map +0 -1
  366. package/dist/src/presentation/web/app/actions/submit-exploration-feedback.js +0 -40
  367. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.d.ts +0 -8
  368. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.d.ts.map +0 -1
  369. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.js +0 -33
  370. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.d.ts +0 -10
  371. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.d.ts.map +0 -1
  372. package/dist/src/presentation/web/components/common/feature-create-drawer/mode-selector.stories.js +0 -33
  373. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.d.ts +0 -11
  374. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.d.ts.map +0 -1
  375. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.js +0 -34
  376. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.d.ts +0 -16
  377. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.d.ts.map +0 -1
  378. package/dist/src/presentation/web/components/common/feature-drawer-tabs/prototype-tab.stories.js +0 -70
  379. package/dist/src/presentation/web/components/ui/toggle-group.d.ts +0 -10
  380. package/dist/src/presentation/web/components/ui/toggle-group.d.ts.map +0 -1
  381. package/dist/src/presentation/web/components/ui/toggle-group.js +0 -22
  382. package/dist/src/presentation/web/components/ui/toggle.d.ts +0 -10
  383. package/dist/src/presentation/web/components/ui/toggle.d.ts.map +0 -1
  384. package/dist/src/presentation/web/components/ui/toggle.js +0 -26
  385. package/web/.next/server/chunks/ssr/[root-of-the-server]__03c66352._.js +0 -4
  386. package/web/.next/server/chunks/ssr/[root-of-the-server]__03c66352._.js.map +0 -1
  387. package/web/.next/server/chunks/ssr/[root-of-the-server]__403afc23._.js +0 -4
  388. package/web/.next/server/chunks/ssr/[root-of-the-server]__403afc23._.js.map +0 -1
  389. package/web/.next/server/chunks/ssr/[root-of-the-server]__df550e85._.js +0 -3
  390. package/web/.next/server/chunks/ssr/[root-of-the-server]__df550e85._.js.map +0 -1
  391. package/web/.next/server/chunks/ssr/[root-of-the-server]__df5602bf._.js +0 -4
  392. package/web/.next/server/chunks/ssr/[root-of-the-server]__df5602bf._.js.map +0 -1
  393. package/web/.next/server/chunks/ssr/[root-of-the-server]__e9f4767a._.js +0 -4
  394. package/web/.next/server/chunks/ssr/[root-of-the-server]__e9f4767a._.js.map +0 -1
  395. package/web/.next/server/chunks/ssr/_0fd635d7._.js.map +0 -1
  396. package/web/.next/server/chunks/ssr/_30ddea9d._.js +0 -9
  397. package/web/.next/server/chunks/ssr/_30ddea9d._.js.map +0 -1
  398. package/web/.next/server/chunks/ssr/_6e79a2cc._.js +0 -3
  399. package/web/.next/server/chunks/ssr/_6e79a2cc._.js.map +0 -1
  400. package/web/.next/server/chunks/ssr/_cac4abe6._.js.map +0 -1
  401. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_9453ce8b._.js +0 -3
  402. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_9453ce8b._.js.map +0 -1
  403. package/web/.next/static/chunks/2ceebcc839ee0d4b.js +0 -1
  404. package/web/.next/static/chunks/5743a9c1c63e5261.js +0 -5
  405. package/web/.next/static/chunks/5cf9745e2ef3837c.js +0 -1
  406. package/web/.next/static/chunks/c80e8e3d0cf5baa6.css +0 -1
  407. package/web/.next/static/chunks/d5bf9c963b5346e1.js +0 -1
  408. package/web/.next/static/chunks/d60cee2e7318f425.js +0 -1
  409. package/web/.next/static/chunks/da565c85277c2461.js +0 -1
  410. package/web/.next/static/chunks/fb89cf91c10b2e8b.js +0 -1
  411. /package/web/.next/static/{G895CgnbZl4YvWN_DaRC- → 0KDwNT3AGQmFGIwjHx99r}/_buildManifest.js +0 -0
  412. /package/web/.next/static/{G895CgnbZl4YvWN_DaRC- → 0KDwNT3AGQmFGIwjHx99r}/_clientMiddlewareManifest.json +0 -0
  413. /package/web/.next/static/{G895CgnbZl4YvWN_DaRC- → 0KDwNT3AGQmFGIwjHx99r}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,30702,e=>{"use strict";let s=(0,e.i(3645).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",()=>s],30702)},38573,e=>{"use strict";let s=(0,e.i(3645).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>s],38573)},1650,e=>{"use strict";e.i(11495),e.s([])},956,e=>{"use strict";var s=e.i(20314),l=e.i(79054),a=e.i(31777);let t=l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("bg-card text-card-foreground rounded-xl border shadow",e),...l}));t.displayName="Card";let r=l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("flex flex-col space-y-1.5 p-6",e),...l}));r.displayName="CardHeader";let i=l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("leading-none font-semibold tracking-tight",e),...l}));i.displayName="CardTitle";let n=l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("text-muted-foreground text-sm",e),...l}));n.displayName="CardDescription";let o=l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("p-6 pt-0",e),...l}));o.displayName="CardContent",l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("flex items-center p-6 pt-0",e),...l})).displayName="CardFooter",e.s(["Card",()=>t,"CardContent",()=>o,"CardDescription",()=>n,"CardHeader",()=>r,"CardTitle",()=>i])},9443,85871,e=>{"use strict";var s=e.i(20314),l=e.i(31777);function a({title:e,description:a,children:t,className:r}){return(0,s.jsxs)("header",{className:(0,l.cn)("flex items-center justify-between gap-4",r),children:[(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)("h1",{className:"text-2xl font-bold tracking-tight",children:e}),a?(0,s.jsx)("p",{className:"text-muted-foreground",children:a}):null]}),t?(0,s.jsx)("div",{"data-slot":"actions",children:t}):null]})}e.s(["PageHeader",()=>a],85871),e.s([],9443)},54793,7729,e=>{"use strict";var s=e.i(20314),l=e.i(31777);function a({icon:e,title:a,description:t,action:r,className:i,...n}){return(0,s.jsxs)("div",{className:(0,l.cn)("flex flex-col items-center gap-4 px-4 py-12 text-center",i),...n,children:[e?(0,s.jsx)("div",{className:"text-muted-foreground",children:e}):null,(0,s.jsx)("h3",{className:"text-lg font-semibold",children:a}),t?(0,s.jsx)("p",{className:"text-muted-foreground max-w-md text-sm",children:t}):null,r?(0,s.jsx)("div",{className:"mt-2",children:r}):null]})}e.s(["EmptyState",()=>a],7729),e.s([],54793)},38752,e=>{"use strict";var s=e.i(20314);e.i(1650);var l=e.i(11495),a=e.i(45811),t=e.i(81846),r=e.i(25235),i=e.i(19933);function n({skill:e,onClose:n}){return(0,s.jsx)(l.BaseDrawer,{open:null!==e,onClose:n,size:"sm",modal:!0,"data-testid":"skill-detail-drawer",header:e?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.DrawerTitle,{children:e.displayName}),(0,s.jsx)(a.DrawerDescription,{children:e.name})]}):void 0,children:e?(0,s.jsxs)("div",{className:"px-4 pb-4",children:[(0,s.jsx)("p",{className:"text-muted-foreground text-sm",children:e.description}),(0,s.jsxs)("div",{className:"mt-4 flex flex-wrap items-center gap-1.5",children:[(0,s.jsx)(t.Badge,{variant:"project"===e.source?"secondary":"outline",children:"project"===e.source?"Project":"Global"}),(0,s.jsx)(t.Badge,{variant:"outline",children:e.category}),e.context?(0,s.jsx)(t.Badge,{variant:"outline",children:e.context}):null]}),e.allowedTools?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Separator,{className:"my-4"}),(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-semibold",children:"Allowed Tools"}),(0,s.jsx)("p",{className:"text-muted-foreground mt-1 text-sm",children:e.allowedTools})]})]}):null,e.resources.length>0?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Separator,{className:"my-4"}),(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-semibold",children:"Resources"}),(0,s.jsx)("ul",{className:"mt-2 space-y-1.5",children:e.resources.map(e=>(0,s.jsxs)("li",{className:"text-muted-foreground flex items-center gap-2 text-sm",children:[(0,s.jsx)(i.FolderOpen,{className:"size-3.5 shrink-0"}),(0,s.jsxs)("span",{children:[e.name,"/ — ",e.fileCount," ",1===e.fileCount?"file":"files"]})]},e.name))})]})]}):null,e.body?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Separator,{className:"my-4"}),(0,s.jsx)("pre",{className:"text-muted-foreground text-sm leading-relaxed whitespace-pre-wrap",children:e.body})]}):null]}):null})}e.s(["SkillDetailDrawer",()=>n])},16919,e=>{"use strict";var s=e.i(20314),l=e.i(79054),a=e.i(66459),t=e.i(12103),r=e.i(98127),i=e.i(35364);e.i(9443);var n=e.i(85871);e.i(54793);var o=e.i(7729),d=e.i(956),c=e.i(81846),m=e.i(19933);function x({skill:e,onSelect:l}){return(0,s.jsxs)(d.Card,{className:"hover:border-primary/50 cursor-pointer transition-colors",role:"button",tabIndex:0,onClick:()=>l(e),onKeyDown:s=>{("Enter"===s.key||" "===s.key)&&(s.preventDefault(),l(e))},"data-testid":`skill-card-${e.name}`,children:[(0,s.jsxs)(d.CardHeader,{className:"pb-3",children:[(0,s.jsx)(d.CardTitle,{className:"text-base",children:e.displayName}),(0,s.jsx)("p",{className:"text-muted-foreground font-mono text-xs",children:e.name})]}),(0,s.jsxs)(d.CardContent,{className:"space-y-3",children:[(0,s.jsx)("p",{className:"text-muted-foreground line-clamp-2 text-sm",children:e.description}),(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,s.jsx)(c.Badge,{variant:"project"===e.source?"secondary":"outline",children:"project"===e.source?"Project":"Global"}),e.context?(0,s.jsx)(c.Badge,{variant:"outline",children:e.context}):null,e.allowedTools?(0,s.jsx)(c.Badge,{variant:"outline",children:"Tools"}):null,e.resources.length>0?(0,s.jsxs)("span",{className:"text-muted-foreground inline-flex items-center gap-1 text-xs",children:[(0,s.jsx)(m.FolderOpen,{className:"size-3"}),e.resources.length," ",1===e.resources.length?"resource":"resources"]}):null]})]})]})}let u=["Workflow","Code Generation","Analysis","Reference"];function h({skills:e,onSkillSelect:l}){let a=function(e){let s=new Map;for(let l of e){let e=s.get(l.category)??[];e.push(l),s.set(l.category,e)}return s}(e);return(0,s.jsx)("div",{className:"space-y-8",children:u.map(e=>{let t=a.get(e);return t&&0!==t.length?(0,s.jsxs)("section",{children:[(0,s.jsxs)("h2",{className:"mb-4 text-lg font-semibold",children:[e," ",(0,s.jsxs)("span",{className:"text-muted-foreground text-sm font-normal",children:["(",t.length,")"]})]}),(0,s.jsx)("div",{className:"grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",children:t.map(e=>(0,s.jsx)(x,{skill:e,onSelect:l},e.name))})]},e):null})})}let f=[{label:"All",value:null},{label:"Workflow",value:"Workflow"},{label:"Code Generation",value:"Code Generation"},{label:"Analysis",value:"Analysis"},{label:"Reference",value:"Reference"}];function p({activeCategory:e,onCategoryChange:l,counts:a}){return(0,s.jsx)("div",{className:"flex flex-wrap gap-2",role:"group","aria-label":"Filter by category",children:f.map(({label:t,value:r})=>(0,s.jsxs)(i.Button,{variant:e===r?"default":"outline",size:"sm",onClick:()=>l(r),children:[t,a&&r?(0,s.jsxs)("span",{className:"ms-1 text-xs opacity-70",children:["(",a[r],")"]}):null]},t))})}var j=e.i(38752),g=e.i(25235),v=e.i(31406),N=e.i(3214),k=e.i(60253),y=e.i(60112),C=e.i(21023);let b=(0,C.createServerReference)("40506f3bef67215750c804d516de18f04a3c6ae52f",C.callServer,void 0,C.findSourceMapURL,"removeInjectedSkill");var w=e.i(2287),S=e.i(41957),R=e.i(68304);let T=(0,C.createServerReference)("4068601a535062d6fc7a2f46afd4a39d31bf6e9eb1",C.callServer,void 0,C.findSourceMapURL,"addInjectedSkill");function A({open:e,onOpenChange:a,onAdded:t,discoveredSkills:n,existingSkillNames:o}){let[d,c]=(0,l.useState)(!1),[m,x]=(0,l.useState)(""),[u,h]=(0,l.useState)(""),[f,p]=(0,l.useState)(""),j=n.filter(e=>!o.includes(e.name)),g=async e=>{c(!0);let s=await T({name:e.name,type:"local",source:`.claude/skills/${e.name}`});(c(!1),s.success)?(y.toast.success(`Added "${e.name}" to feature skills`),t()):y.toast.error(s.error??"Failed to add skill")},v=async()=>{if(!m.trim()||!u.trim())return void y.toast.error("Name and source are required");c(!0);let e=await T({name:m.trim(),type:"remote",source:u.trim(),...f.trim()&&{remoteSkillName:f.trim()}});(c(!1),e.success)?(y.toast.success(`Added "${m.trim()}" to feature skills`),x(""),h(""),p(""),t()):y.toast.error(e.error??"Failed to add skill")};return(0,s.jsx)(w.Dialog,{open:e,onOpenChange:a,children:(0,s.jsxs)(w.DialogContent,{className:"sm:max-w-md","data-testid":"add-skill-dialog",children:[(0,s.jsx)(w.DialogHeader,{children:(0,s.jsx)(w.DialogTitle,{children:"Add Skill to Features"})}),(0,s.jsxs)(R.Tabs,{defaultValue:"local",children:[(0,s.jsxs)(R.TabsList,{className:"w-full",children:[(0,s.jsx)(R.TabsTrigger,{value:"local",className:"flex-1",children:"Local"}),(0,s.jsx)(R.TabsTrigger,{value:"remote",className:"flex-1",children:"Remote"})]}),(0,s.jsx)(R.TabsContent,{value:"local",className:"mt-4",children:0===j.length?(0,s.jsx)("p",{className:"text-muted-foreground text-sm",children:"All discovered skills are already configured."}):(0,s.jsx)("div",{className:"flex max-h-60 flex-col gap-2 overflow-y-auto",children:j.map(e=>(0,s.jsxs)("button",{type:"button",className:"hover:bg-accent flex flex-col gap-0.5 rounded-md border p-3 text-left transition-colors",onClick:()=>g(e),disabled:d,"data-testid":`add-local-skill-${e.name}`,children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:e.displayName}),(0,s.jsx)("span",{className:"text-muted-foreground line-clamp-1 text-xs",children:e.description})]},e.name))})}),(0,s.jsx)(R.TabsContent,{value:"remote",className:"mt-4",children:(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)(S.Label,{htmlFor:"remote-name",children:"Name"}),(0,s.jsx)(r.Input,{id:"remote-name",placeholder:"e.g. remotion-best-practices",value:m,onChange:e=>x(e.target.value),"data-testid":"remote-skill-name"})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)(S.Label,{htmlFor:"remote-source",children:"Source (npm package or URL)"}),(0,s.jsx)(r.Input,{id:"remote-source",placeholder:"e.g. @anthropic/remotion-skills",value:u,onChange:e=>h(e.target.value),"data-testid":"remote-skill-source"})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)(S.Label,{htmlFor:"remote-skill-name",children:"Skill Name (optional)"}),(0,s.jsx)(r.Input,{id:"remote-skill-name",placeholder:"e.g. remotion-best-practices",value:f,onChange:e=>p(e.target.value),"data-testid":"remote-skill-skill-name"})]}),(0,s.jsx)(w.DialogFooter,{children:(0,s.jsx)(i.Button,{onClick:v,disabled:d||!m.trim()||!u.trim(),"data-testid":"add-remote-skill-submit",children:"Add Remote Skill"})})]})})]})]})})}function D({config:e,discoveredSkills:a}){let t=(0,v.useRouter)(),[r,n]=(0,l.useState)(!1),[o,d]=(0,l.useState)(null),c=(0,l.useMemo)(()=>{let e=new Map;for(let s of a)e.set(s.name,s.description);return e},[a]),m=async e=>{d(e);let s=await b(e);(d(null),s.success)?(y.toast.success(`Removed "${e}" from feature skills`),t.refresh()):y.toast.error(s.error??"Failed to remove skill")};return(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h2",{className:"text-base font-semibold",children:"Feature Skills"}),(0,s.jsx)("p",{className:"text-muted-foreground text-sm",children:"Curated skills included in new feature worktrees to guide the agent"})]}),e.skills.length>0?(0,s.jsx)("div",{className:"grid gap-2 sm:grid-cols-2 lg:grid-cols-3",children:e.skills.map(e=>(0,s.jsx)(F,{skill:e,description:c.get(e.name),onRemove:()=>m(e.name),isRemoving:o===e.name},e.name))}):(0,s.jsx)("p",{className:"text-muted-foreground text-sm",children:"No skills configured. Add skills to guide the agent when working on new features."}),(0,s.jsx)("div",{children:(0,s.jsxs)(i.Button,{variant:"outline",size:"sm",onClick:()=>n(!0),"data-testid":"add-injected-skill-button",children:[(0,s.jsx)(N.Plus,{className:"mr-1.5 size-4"}),"Add Skill"]})}),(0,s.jsx)(A,{open:r,onOpenChange:n,onAdded:()=>{n(!1),t.refresh()},discoveredSkills:a,existingSkillNames:e.skills.map(e=>e.name)})]})}function F({skill:e,description:l,onRemove:a,isRemoving:t}){return(0,s.jsxs)(d.Card,{"data-testid":`injected-skill-${e.name}`,children:[(0,s.jsxs)(d.CardHeader,{className:"flex flex-row items-start justify-between gap-2 pb-2",children:[(0,s.jsx)("div",{className:"min-w-0",children:(0,s.jsx)(d.CardTitle,{className:"truncate text-sm",children:e.name})}),(0,s.jsx)(i.Button,{variant:"ghost",size:"icon-sm",className:"shrink-0",onClick:a,disabled:t,"aria-label":`Remove ${e.name}`,"data-testid":`remove-injected-skill-${e.name}`,children:(0,s.jsx)(k.X,{className:"size-4"})})]}),(0,s.jsxs)(d.CardContent,{className:"space-y-2 pt-0",children:[l?(0,s.jsx)("p",{className:"text-muted-foreground line-clamp-2 text-xs",children:l}):null,(0,s.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,s.jsx)(c.Badge,{variant:"local"===e.type?"secondary":"outline",className:"text-xs",children:"local"===e.type?"Local":"Remote"}),(0,s.jsx)("span",{className:"text-muted-foreground max-w-37.5 truncate text-xs",children:e.source})]})]})]})}function B({skills:e,injectionConfig:d}){let[c,m]=(0,l.useState)(""),[x,u]=(0,l.useState)(null),[f,v]=(0,l.useState)(null),N=(0,l.useMemo)(()=>(function(e){let s={Workflow:0,"Code Generation":0,Analysis:0,Reference:0};for(let l of e)s[l.category]++;return s})(e),[e]),k=(0,l.useMemo)(()=>{let s=c.toLowerCase();return e.filter(e=>{if(x&&e.category!==x)return!1;if(s){let l=e.name.toLowerCase().includes(s),a=e.description.toLowerCase().includes(s);if(!l&&!a)return!1}return!0})},[e,c,x]);return 0===e.length?(0,s.jsxs)("div",{className:"flex flex-col gap-6 p-6",children:[(0,s.jsx)(n.PageHeader,{title:"Skills",description:"Claude Code skills available to this project"}),(0,s.jsx)(D,{config:d,discoveredSkills:e}),(0,s.jsx)(g.Separator,{}),(0,s.jsx)(o.EmptyState,{icon:(0,s.jsx)(t.Puzzle,{className:"size-10"}),title:"No skills found",description:"No Claude Code skills are installed. Add skills to .claude/skills/ to get started."})]}):(0,s.jsxs)("div",{className:"flex flex-col gap-6 p-6",children:[(0,s.jsx)(n.PageHeader,{title:"Skills",description:"Claude Code skills available to this project"}),(0,s.jsx)(D,{config:d,discoveredSkills:e}),(0,s.jsx)(g.Separator,{}),(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)(a.Search,{className:"text-muted-foreground absolute top-1/2 left-3 size-4 -translate-y-1/2"}),(0,s.jsx)(r.Input,{placeholder:"Search skills...",value:c,onChange:e=>m(e.target.value),className:"ps-9"})]}),(0,s.jsx)(p,{activeCategory:x,onCategoryChange:u,counts:N}),k.length>0?(0,s.jsx)(h,{skills:k,onSkillSelect:v}):(0,s.jsx)(o.EmptyState,{icon:(0,s.jsx)(a.Search,{className:"size-10"}),title:"No matching skills",description:"No skills match your current search and filter criteria.",action:(0,s.jsx)(i.Button,{variant:"outline",onClick:()=>{m(""),u(null)},children:"Clear filters"})}),(0,s.jsx)(j.SkillDetailDrawer,{skill:f,onClose:()=>v(null)})]})}e.s(["SkillsPageClient",()=>B],16919)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,30702,e=>{"use strict";let s=(0,e.i(3645).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",()=>s],30702)},38573,e=>{"use strict";let s=(0,e.i(3645).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>s],38573)},1650,e=>{"use strict";e.i(11495),e.s([])},956,e=>{"use strict";var s=e.i(20314),l=e.i(79054),a=e.i(31777);let t=l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("bg-card text-card-foreground rounded-xl border shadow",e),...l}));t.displayName="Card";let r=l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("flex flex-col space-y-1.5 p-6",e),...l}));r.displayName="CardHeader";let i=l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("leading-none font-semibold tracking-tight",e),...l}));i.displayName="CardTitle";let n=l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("text-muted-foreground text-sm",e),...l}));n.displayName="CardDescription";let o=l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("p-6 pt-0",e),...l}));o.displayName="CardContent",l.forwardRef(({className:e,...l},t)=>(0,s.jsx)("div",{ref:t,className:(0,a.cn)("flex items-center p-6 pt-0",e),...l})).displayName="CardFooter",e.s(["Card",()=>t,"CardContent",()=>o,"CardDescription",()=>n,"CardHeader",()=>r,"CardTitle",()=>i])},9443,85871,e=>{"use strict";var s=e.i(20314),l=e.i(31777);function a({title:e,description:a,children:t,className:r}){return(0,s.jsxs)("header",{className:(0,l.cn)("flex items-center justify-between gap-4",r),children:[(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)("h1",{className:"text-2xl font-bold tracking-tight",children:e}),a?(0,s.jsx)("p",{className:"text-muted-foreground",children:a}):null]}),t?(0,s.jsx)("div",{"data-slot":"actions",children:t}):null]})}e.s(["PageHeader",()=>a],85871),e.s([],9443)},54793,7729,e=>{"use strict";var s=e.i(20314),l=e.i(31777);function a({icon:e,title:a,description:t,action:r,className:i,...n}){return(0,s.jsxs)("div",{className:(0,l.cn)("flex flex-col items-center gap-4 px-4 py-12 text-center",i),...n,children:[e?(0,s.jsx)("div",{className:"text-muted-foreground",children:e}):null,(0,s.jsx)("h3",{className:"text-lg font-semibold",children:a}),t?(0,s.jsx)("p",{className:"text-muted-foreground max-w-md text-sm",children:t}):null,r?(0,s.jsx)("div",{className:"mt-2",children:r}):null]})}e.s(["EmptyState",()=>a],7729),e.s([],54793)},38752,e=>{"use strict";var s=e.i(20314);e.i(1650);var l=e.i(11495),a=e.i(45811),t=e.i(81846),r=e.i(25235),i=e.i(19933);function n({skill:e,onClose:n}){return(0,s.jsx)(l.BaseDrawer,{open:null!==e,onClose:n,size:"sm",modal:!0,"data-testid":"skill-detail-drawer",header:e?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.DrawerTitle,{children:e.displayName}),(0,s.jsx)(a.DrawerDescription,{children:e.name})]}):void 0,children:e?(0,s.jsxs)("div",{className:"px-4 pb-4",children:[(0,s.jsx)("p",{className:"text-muted-foreground text-sm",children:e.description}),(0,s.jsxs)("div",{className:"mt-4 flex flex-wrap items-center gap-1.5",children:[(0,s.jsx)(t.Badge,{variant:"project"===e.source?"secondary":"outline",children:"project"===e.source?"Project":"Global"}),(0,s.jsx)(t.Badge,{variant:"outline",children:e.category}),e.context?(0,s.jsx)(t.Badge,{variant:"outline",children:e.context}):null]}),e.allowedTools?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Separator,{className:"my-4"}),(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-semibold",children:"Allowed Tools"}),(0,s.jsx)("p",{className:"text-muted-foreground mt-1 text-sm",children:e.allowedTools})]})]}):null,e.resources.length>0?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Separator,{className:"my-4"}),(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-semibold",children:"Resources"}),(0,s.jsx)("ul",{className:"mt-2 space-y-1.5",children:e.resources.map(e=>(0,s.jsxs)("li",{className:"text-muted-foreground flex items-center gap-2 text-sm",children:[(0,s.jsx)(i.FolderOpen,{className:"size-3.5 shrink-0"}),(0,s.jsxs)("span",{children:[e.name,"/ — ",e.fileCount," ",1===e.fileCount?"file":"files"]})]},e.name))})]})]}):null,e.body?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Separator,{className:"my-4"}),(0,s.jsx)("pre",{className:"text-muted-foreground text-sm leading-relaxed whitespace-pre-wrap",children:e.body})]}):null]}):null})}e.s(["SkillDetailDrawer",()=>n])},16919,e=>{"use strict";var s=e.i(20314),l=e.i(79054),a=e.i(66459),t=e.i(12103),r=e.i(98127),i=e.i(35364);e.i(9443);var n=e.i(85871);e.i(54793);var o=e.i(7729),d=e.i(956),c=e.i(81846),m=e.i(19933);function x({skill:e,onSelect:l}){return(0,s.jsxs)(d.Card,{className:"hover:border-primary/50 cursor-pointer transition-colors",role:"button",tabIndex:0,onClick:()=>l(e),onKeyDown:s=>{("Enter"===s.key||" "===s.key)&&(s.preventDefault(),l(e))},"data-testid":`skill-card-${e.name}`,children:[(0,s.jsxs)(d.CardHeader,{className:"pb-3",children:[(0,s.jsx)(d.CardTitle,{className:"text-base",children:e.displayName}),(0,s.jsx)("p",{className:"text-muted-foreground font-mono text-xs",children:e.name})]}),(0,s.jsxs)(d.CardContent,{className:"space-y-3",children:[(0,s.jsx)("p",{className:"text-muted-foreground line-clamp-2 text-sm",children:e.description}),(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,s.jsx)(c.Badge,{variant:"project"===e.source?"secondary":"outline",children:"project"===e.source?"Project":"Global"}),e.context?(0,s.jsx)(c.Badge,{variant:"outline",children:e.context}):null,e.allowedTools?(0,s.jsx)(c.Badge,{variant:"outline",children:"Tools"}):null,e.resources.length>0?(0,s.jsxs)("span",{className:"text-muted-foreground inline-flex items-center gap-1 text-xs",children:[(0,s.jsx)(m.FolderOpen,{className:"size-3"}),e.resources.length," ",1===e.resources.length?"resource":"resources"]}):null]})]})]})}let u=["Workflow","Code Generation","Analysis","Reference"];function h({skills:e,onSkillSelect:l}){let a=function(e){let s=new Map;for(let l of e){let e=s.get(l.category)??[];e.push(l),s.set(l.category,e)}return s}(e);return(0,s.jsx)("div",{className:"space-y-8",children:u.map(e=>{let t=a.get(e);return t&&0!==t.length?(0,s.jsxs)("section",{children:[(0,s.jsxs)("h2",{className:"mb-4 text-lg font-semibold",children:[e," ",(0,s.jsxs)("span",{className:"text-muted-foreground text-sm font-normal",children:["(",t.length,")"]})]}),(0,s.jsx)("div",{className:"grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",children:t.map(e=>(0,s.jsx)(x,{skill:e,onSelect:l},e.name))})]},e):null})})}let p=[{label:"All",value:null},{label:"Workflow",value:"Workflow"},{label:"Code Generation",value:"Code Generation"},{label:"Analysis",value:"Analysis"},{label:"Reference",value:"Reference"}];function f({activeCategory:e,onCategoryChange:l,counts:a}){return(0,s.jsx)("div",{className:"flex flex-wrap gap-2",role:"group","aria-label":"Filter by category",children:p.map(({label:t,value:r})=>(0,s.jsxs)(i.Button,{variant:e===r?"default":"outline",size:"sm",onClick:()=>l(r),children:[t,a&&r?(0,s.jsxs)("span",{className:"ms-1 text-xs opacity-70",children:["(",a[r],")"]}):null]},t))})}var j=e.i(38752),g=e.i(25235),v=e.i(31406),N=e.i(3214),k=e.i(60253),y=e.i(60112),C=e.i(21023);let b=(0,C.createServerReference)("4019659dce48925cbfcf313dbb3aaee6e2c3971a40",C.callServer,void 0,C.findSourceMapURL,"removeInjectedSkill");var w=e.i(2287),S=e.i(41957),R=e.i(68304);let T=(0,C.createServerReference)("406d4061f6398e61df3994a73c87ee6043f35e4269",C.callServer,void 0,C.findSourceMapURL,"addInjectedSkill");function A({open:e,onOpenChange:a,onAdded:t,discoveredSkills:n,existingSkillNames:o}){let[d,c]=(0,l.useState)(!1),[m,x]=(0,l.useState)(""),[u,h]=(0,l.useState)(""),[p,f]=(0,l.useState)(""),j=n.filter(e=>!o.includes(e.name)),g=async e=>{c(!0);let s=await T({name:e.name,type:"local",source:`.claude/skills/${e.name}`});(c(!1),s.success)?(y.toast.success(`Added "${e.name}" to feature skills`),t()):y.toast.error(s.error??"Failed to add skill")},v=async()=>{if(!m.trim()||!u.trim())return void y.toast.error("Name and source are required");c(!0);let e=await T({name:m.trim(),type:"remote",source:u.trim(),...p.trim()&&{remoteSkillName:p.trim()}});(c(!1),e.success)?(y.toast.success(`Added "${m.trim()}" to feature skills`),x(""),h(""),f(""),t()):y.toast.error(e.error??"Failed to add skill")};return(0,s.jsx)(w.Dialog,{open:e,onOpenChange:a,children:(0,s.jsxs)(w.DialogContent,{className:"sm:max-w-md","data-testid":"add-skill-dialog",children:[(0,s.jsx)(w.DialogHeader,{children:(0,s.jsx)(w.DialogTitle,{children:"Add Skill to Features"})}),(0,s.jsxs)(R.Tabs,{defaultValue:"local",children:[(0,s.jsxs)(R.TabsList,{className:"w-full",children:[(0,s.jsx)(R.TabsTrigger,{value:"local",className:"flex-1",children:"Local"}),(0,s.jsx)(R.TabsTrigger,{value:"remote",className:"flex-1",children:"Remote"})]}),(0,s.jsx)(R.TabsContent,{value:"local",className:"mt-4",children:0===j.length?(0,s.jsx)("p",{className:"text-muted-foreground text-sm",children:"All discovered skills are already configured."}):(0,s.jsx)("div",{className:"flex max-h-60 flex-col gap-2 overflow-y-auto",children:j.map(e=>(0,s.jsxs)("button",{type:"button",className:"hover:bg-accent flex flex-col gap-0.5 rounded-md border p-3 text-left transition-colors",onClick:()=>g(e),disabled:d,"data-testid":`add-local-skill-${e.name}`,children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:e.displayName}),(0,s.jsx)("span",{className:"text-muted-foreground line-clamp-1 text-xs",children:e.description})]},e.name))})}),(0,s.jsx)(R.TabsContent,{value:"remote",className:"mt-4",children:(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)(S.Label,{htmlFor:"remote-name",children:"Name"}),(0,s.jsx)(r.Input,{id:"remote-name",placeholder:"e.g. remotion-best-practices",value:m,onChange:e=>x(e.target.value),"data-testid":"remote-skill-name"})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)(S.Label,{htmlFor:"remote-source",children:"Source (npm package or URL)"}),(0,s.jsx)(r.Input,{id:"remote-source",placeholder:"e.g. @anthropic/remotion-skills",value:u,onChange:e=>h(e.target.value),"data-testid":"remote-skill-source"})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)(S.Label,{htmlFor:"remote-skill-name",children:"Skill Name (optional)"}),(0,s.jsx)(r.Input,{id:"remote-skill-name",placeholder:"e.g. remotion-best-practices",value:p,onChange:e=>f(e.target.value),"data-testid":"remote-skill-skill-name"})]}),(0,s.jsx)(w.DialogFooter,{children:(0,s.jsx)(i.Button,{onClick:v,disabled:d||!m.trim()||!u.trim(),"data-testid":"add-remote-skill-submit",children:"Add Remote Skill"})})]})})]})]})})}function D({config:e,discoveredSkills:a}){let t=(0,v.useRouter)(),[r,n]=(0,l.useState)(!1),[o,d]=(0,l.useState)(null),c=(0,l.useMemo)(()=>{let e=new Map;for(let s of a)e.set(s.name,s.description);return e},[a]),m=async e=>{d(e);let s=await b(e);(d(null),s.success)?(y.toast.success(`Removed "${e}" from feature skills`),t.refresh()):y.toast.error(s.error??"Failed to remove skill")};return(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h2",{className:"text-base font-semibold",children:"Feature Skills"}),(0,s.jsx)("p",{className:"text-muted-foreground text-sm",children:"Curated skills included in new feature worktrees to guide the agent"})]}),e.skills.length>0?(0,s.jsx)("div",{className:"grid gap-2 sm:grid-cols-2 lg:grid-cols-3",children:e.skills.map(e=>(0,s.jsx)(F,{skill:e,description:c.get(e.name),onRemove:()=>m(e.name),isRemoving:o===e.name},e.name))}):(0,s.jsx)("p",{className:"text-muted-foreground text-sm",children:"No skills configured. Add skills to guide the agent when working on new features."}),(0,s.jsx)("div",{children:(0,s.jsxs)(i.Button,{variant:"outline",size:"sm",onClick:()=>n(!0),"data-testid":"add-injected-skill-button",children:[(0,s.jsx)(N.Plus,{className:"mr-1.5 size-4"}),"Add Skill"]})}),(0,s.jsx)(A,{open:r,onOpenChange:n,onAdded:()=>{n(!1),t.refresh()},discoveredSkills:a,existingSkillNames:e.skills.map(e=>e.name)})]})}function F({skill:e,description:l,onRemove:a,isRemoving:t}){return(0,s.jsxs)(d.Card,{"data-testid":`injected-skill-${e.name}`,children:[(0,s.jsxs)(d.CardHeader,{className:"flex flex-row items-start justify-between gap-2 pb-2",children:[(0,s.jsx)("div",{className:"min-w-0",children:(0,s.jsx)(d.CardTitle,{className:"truncate text-sm",children:e.name})}),(0,s.jsx)(i.Button,{variant:"ghost",size:"icon-sm",className:"shrink-0",onClick:a,disabled:t,"aria-label":`Remove ${e.name}`,"data-testid":`remove-injected-skill-${e.name}`,children:(0,s.jsx)(k.X,{className:"size-4"})})]}),(0,s.jsxs)(d.CardContent,{className:"space-y-2 pt-0",children:[l?(0,s.jsx)("p",{className:"text-muted-foreground line-clamp-2 text-xs",children:l}):null,(0,s.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,s.jsx)(c.Badge,{variant:"local"===e.type?"secondary":"outline",className:"text-xs",children:"local"===e.type?"Local":"Remote"}),(0,s.jsx)("span",{className:"text-muted-foreground max-w-37.5 truncate text-xs",children:e.source})]})]})]})}function B({skills:e,injectionConfig:d}){let[c,m]=(0,l.useState)(""),[x,u]=(0,l.useState)(null),[p,v]=(0,l.useState)(null),N=(0,l.useMemo)(()=>(function(e){let s={Workflow:0,"Code Generation":0,Analysis:0,Reference:0};for(let l of e)s[l.category]++;return s})(e),[e]),k=(0,l.useMemo)(()=>{let s=c.toLowerCase();return e.filter(e=>{if(x&&e.category!==x)return!1;if(s){let l=e.name.toLowerCase().includes(s),a=e.description.toLowerCase().includes(s);if(!l&&!a)return!1}return!0})},[e,c,x]);return 0===e.length?(0,s.jsxs)("div",{className:"flex flex-col gap-6 p-6",children:[(0,s.jsx)(n.PageHeader,{title:"Skills",description:"Claude Code skills available to this project"}),(0,s.jsx)(D,{config:d,discoveredSkills:e}),(0,s.jsx)(g.Separator,{}),(0,s.jsx)(o.EmptyState,{icon:(0,s.jsx)(t.Puzzle,{className:"size-10"}),title:"No skills found",description:"No Claude Code skills are installed. Add skills to .claude/skills/ to get started."})]}):(0,s.jsxs)("div",{className:"flex flex-col gap-6 p-6",children:[(0,s.jsx)(n.PageHeader,{title:"Skills",description:"Claude Code skills available to this project"}),(0,s.jsx)(D,{config:d,discoveredSkills:e}),(0,s.jsx)(g.Separator,{}),(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)(a.Search,{className:"text-muted-foreground absolute top-1/2 left-3 size-4 -translate-y-1/2"}),(0,s.jsx)(r.Input,{placeholder:"Search skills...",value:c,onChange:e=>m(e.target.value),className:"ps-9"})]}),(0,s.jsx)(f,{activeCategory:x,onCategoryChange:u,counts:N}),k.length>0?(0,s.jsx)(h,{skills:k,onSkillSelect:v}):(0,s.jsx)(o.EmptyState,{icon:(0,s.jsx)(a.Search,{className:"size-10"}),title:"No matching skills",description:"No skills match your current search and filter criteria.",action:(0,s.jsx)(i.Button,{variant:"outline",onClick:()=>{m(""),u(null)},children:"Clear filters"})}),(0,s.jsx)(j.SkillDetailDrawer,{skill:p,onClose:()=>v(null)})]})}e.s(["SkillsPageClient",()=>B],16919)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,95230,e=>{"use strict";let t=(0,e.i(3645).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);e.s(["default",()=>t])},41413,e=>{"use strict";var t=e.i(20314),s=e.i(79054),r=e.i(23925),i=e.i(11345),n=e.i(76016),a=e.i(62763),o=e.i(1998),l=e.i(86782),u=e.i(29847),c=e.i(35364),h=e.i(90382),d=e.i(31777);function p({initialAgentType:e,initialModel:p,agentType:f,model:m,onAgentModelChange:y,onSave:v,saveError:b,saving:g,disabled:x,className:w,mode:S}){let[j,T]=s.useState(!1),[R,k]=s.useState([]),[C,O]=s.useState(!0),[I,E]=s.useState(f??e),[F,M]=s.useState(m??p),[Q,N]=s.useState(!1),[D,P]=s.useState(null),[U,A]=s.useState(0),[q,L]=s.useState(null);s.useEffect(()=>{(0,a.getAllAgentModels)().then(k).finally(()=>O(!1))},[]),s.useEffect(()=>{E(f??e)},[f,e]),s.useEffect(()=>{M(m??p)},[m,p]);let H=s.useRef(j);s.useEffect(()=>{let e=H.current;if(H.current=j,e&&!j){let e=setTimeout(()=>{A(0),L(null)},150);return()=>clearTimeout(e)}},[j]);let K=async(e,t)=>{if(T(!1),e===I&&t===F)return;if(P(null),"override"===S){E(e),M(t),y?.(e,t);return}let s=v??(async(e,t)=>(0,o.updateAgentAndModel)(e,t||null));N(!0);try{let r=await s(e,t);if(r&&"ok"in r&&!r.ok)return void P(r.error??"Failed to save");E(e),M(t),y?.(e,t)}catch{P("Failed to save")}finally{N(!1)}},z=b??D,B=(0,l.getAgentTypeIcon)(I),_=R.find(e=>e.agentType===I)?.label??I,V=F?(0,u.getModelMeta)(F).displayName||F:null,G=q?R.find(e=>e.agentType===q):null;return(0,t.jsxs)("div",{className:(0,d.cn)("flex flex-col gap-1",w),children:[(0,t.jsxs)(h.Popover,{open:j,onOpenChange:T,children:[(0,t.jsx)(h.PopoverTrigger,{asChild:!0,children:(0,t.jsx)(c.Button,{type:"button",variant:"outline",role:"combobox","aria-expanded":j,disabled:(x??!1)||C||(g??!1)||Q,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)(B,{className:"h-4 w-4 shrink-0"}),C?"Loading…":(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:_}),V?(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:V})]}):null]})]})})}),(0,t.jsx)(h.PopoverContent,{className:"z-[70] 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===U?"-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"}),R.map(e=>{let s=(0,l.getAgentTypeIcon)(e.agentType),i=I===e.agentType,a=e.models.length>0;return(0,t.jsxs)("button",{type:"button",className:(0,d.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",i&&"bg-accent/50"),onClick:()=>{a?(L(e.agentType),requestAnimationFrame(()=>{requestAnimationFrame(()=>A(1))})):K(e.agentType,"")},children:[(0,t.jsx)(s,{className:"h-4 w-4 shrink-0"}),(0,t.jsx)("span",{className:"flex-1 text-start",children:e.label}),i&&!a?(0,t.jsx)(r.Check,{className:"text-primary h-3.5 w-3.5 shrink-0"}):null,a?(0,t.jsx)(n.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:G?(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:()=>{A(0),setTimeout(()=>L(null),220)},children:[(0,t.jsx)(i.ChevronLeft,{className:"h-3.5 w-3.5"}),G.label]}),G.models.map(e=>{let s=I===G.agentType&&F===e.id;return(0,t.jsxs)("button",{type:"button",className:(0,d.cn)("flex w-full cursor-pointer items-center gap-3 px-3 py-2 text-start transition-colors","hover:bg-accent hover:text-accent-foreground",s&&"bg-accent/50"),onClick:()=>K(G.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})]}),s?(0,t.jsx)(r.Check,{className:"text-primary h-3.5 w-3.5 shrink-0"}):null]},e.id)})]}):null})]})})]}),!!z&&(0,t.jsx)("p",{className:"text-destructive text-sm",children:z})]})}e.s(["AgentModelPicker",()=>p])},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])},43698,e=>{"use strict";let t=(0,e.i(3645).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(["default",()=>t])},64764,80436,17087,e=>{"use strict";var t=e.i(15506);e.s(["Loader2Icon",()=>t.default],64764);var s=e.i(95230);e.s(["DownloadIcon",()=>s.default],80436);let r=(0,e.i(3645).default)("sticky-note",[["path",{d:"M21 9a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 15 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2z",key:"1dfntj"}],["path",{d:"M15 3v5a1 1 0 0 0 1 1h5",key:"6s6qgf"}]]);e.s(["StickyNoteIcon",()=>r],17087)},48306,e=>{"use strict";var t=e.i(20314),s=e.i(31777);function r({className:e,...r}){return(0,t.jsx)("textarea",{"data-slot":"textarea",className:(0,s.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),...r})}e.s(["Textarea",()=>r])},28267,57484,e=>{"use strict";var t=e.i(1693);e.s(["VisuallyHidden",0,t],28267);let s=(0,e.i(3645).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"}]]);e.s(["FileIcon",()=>s],57484)},16298,e=>{"use strict";let t=(0,e.i(3645).default)("file-text",[["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"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);e.s(["default",()=>t])},50032,86254,e=>{"use strict";var t=e.i(20314),s=e.i(60253),r=e.i(64764),i=e.i(80436),n=e.i(17087),a=e.i(31777),o=e.i(2287),l=e.i(48306),u=e.i(2828),c=e.i(28267),h=e.i(57484),d=e.i(16298),d=d;let p=(0,e.i(3645).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 f=e.i(93752),f=f;e.i(35364);let m=new Set([".png",".jpg",".jpeg",".gif",".svg",".webp",".ico",".bmp"]),y=new Set([".ts",".tsx",".js",".jsx",".json",".yaml",".yml",".xml",".html",".css",".md"]);function v(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 g(e,t){let s=new URLSearchParams({path:e,mimeType:t});return`/api/attachments/preview?${s.toString()}`}function x({name:e,size:x,mimeType:w,path:S,onRemove:j,loading:T=!1,disabled:R=!1,notes:k,onNotesChange:C}){let O,I,E=(O=e.lastIndexOf("."))>=0?e.slice(O).toLowerCase():"",F=m.has(E)?p:".pdf"===E?d.default:y.has(E)?f.default:h.FileIcon,M=".pdf"===E?"bg-red-50 text-red-600":m.has(E)?"bg-blue-50 text-blue-600":y.has(E)?"bg-emerald-50 text-emerald-600":"bg-gray-50 text-gray-600",Q=(I=e.lastIndexOf("."))>=0&&b.has(e.slice(I).toLowerCase());if(T)return(0,t.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-md border",children:(0,t.jsx)(r.Loader2Icon,{className:"text-muted-foreground h-5 w-5 animate-spin"})});if(Q){let r=(0,t.jsxs)("button",{type:"button",className:"relative block cursor-pointer rounded-md",children:[(0,t.jsx)("img",{src:g(S,w),alt:e,title:e,className:"h-12 w-12 rounded-md border object-cover transition-opacity hover:opacity-80"}),k?(0,t.jsx)("span",{className:"ring-background absolute -right-1 -bottom-1 flex h-4 w-4 items-center justify-center rounded-full bg-amber-500 text-white shadow-sm ring-2",children:(0,t.jsx)(n.StickyNoteIcon,{className:"h-2.5 w-2.5"})}):null]});return(0,t.jsx)(u.TooltipProvider,{delayDuration:200,children:(0,t.jsxs)(o.Dialog,{children:[(0,t.jsxs)(u.Tooltip,{children:[(0,t.jsxs)("div",{className:"group relative",children:[(0,t.jsx)(u.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(o.DialogTrigger,{asChild:!0,children:r})}),!R&&(0,t.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,t.jsx)(s.X,{className:"h-3 w-3"})})]}),k?(0,t.jsx)(u.TooltipContent,{side:"bottom",className:"max-w-[220px] border border-amber-200 bg-amber-50 text-amber-950 dark:border-amber-800 dark:bg-amber-950 dark:text-amber-100",children:(0,t.jsx)("p",{className:"line-clamp-3 text-xs leading-snug",children:k})}):null]}),(0,t.jsxs)(o.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,t.jsx)(c.VisuallyHidden.Root,{children:(0,t.jsxs)(o.DialogTitle,{children:["Preview: ",e]})}),(0,t.jsx)("div",{className:"relative bg-black/90",children:(0,t.jsx)("img",{src:g(S,w),alt:e,className:"h-auto max-h-[70vh] w-full object-contain"})}),(0,t.jsxs)("div",{className:"bg-background flex flex-col gap-2 px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,t.jsx)("span",{className:"truncate text-sm font-medium",children:e}),(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:v(x)})]}),(0,t.jsx)("a",{href:g(S,w),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,t.jsx)(i.DownloadIcon,{className:"h-4 w-4"})})]}),C?(0,t.jsx)(l.Textarea,{placeholder:"Add notes about this image…",value:k??"",onChange:e=>C(e.target.value),rows:2,className:"resize-none text-sm","aria-label":"Image notes"}):k?(0,t.jsx)("p",{className:"text-muted-foreground text-sm",children:k}):null]})]})]})})}return(0,t.jsxs)("div",{className:"group relative flex items-center gap-2 rounded-full border py-1 ps-2 pe-3",children:[(0,t.jsx)("div",{className:(0,a.cn)("flex h-6 w-6 shrink-0 items-center justify-center rounded-full",M),children:(0,t.jsx)(F,{className:"h-3 w-3"})}),(0,t.jsx)("span",{className:"max-w-[120px] truncate text-sm",children:e}),(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:v(x)}),!R&&(0,t.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,t.jsx)(s.X,{className:"h-3 w-3"})})]})}e.s(["AttachmentChip",()=>x],86254),e.s([],50032)},99105,e=>{"use strict";let t=(0,e.i(3645).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>t],99105)},33548,e=>{"use strict";let t=(0,e.i(3645).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",()=>t],33548)},67669,e=>{"use strict";let t=(0,e.i(3645).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",()=>t],67669)},94365,e=>{"use strict";let t=(0,e.i(3645).default)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);e.s(["User",()=>t],94365)},4520,77501,e=>{"use strict";var t=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}};e.s(["Subscribable",()=>t],77501);var s=new class extends t{#e;#t;#s;constructor(){super(),this.#s=e=>{if("u">typeof window&&window.addEventListener){let t=()=>e();return window.addEventListener("visibilitychange",t,!1),()=>{window.removeEventListener("visibilitychange",t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#s)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#s=e,this.#t?.(),this.#t=e(e=>{"boolean"==typeof e?this.setFocused(e):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){let e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return"boolean"==typeof this.#e?this.#e:globalThis.document?.visibilityState!=="hidden"}};e.s(["focusManager",()=>s],4520)},3,68911,e=>{"use strict";e.i(44172);var t={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},s=new class{#r=t;#i=!1;setTimeoutProvider(e){this.#r=e}setTimeout(e,t){return this.#r.setTimeout(e,t)}clearTimeout(e){this.#r.clearTimeout(e)}setInterval(e,t){return this.#r.setInterval(e,t)}clearInterval(e){this.#r.clearInterval(e)}};function r(e){setTimeout(e,0)}e.s(["systemSetTimeoutZero",()=>r,"timeoutManager",()=>s],68911);var i="u"<typeof window||"Deno"in globalThis;function n(){}function a(e,t){return"function"==typeof e?e(t):e}function o(e){return"number"==typeof e&&e>=0&&e!==1/0}function l(e,t){return Math.max(e+(t||0)-Date.now(),0)}function u(e,t){return"function"==typeof e?e(t):e}function c(e,t){return"function"==typeof e?e(t):e}function h(e,t){let{type:s="all",exact:r,fetchStatus:i,predicate:n,queryKey:a,stale:o}=e;if(a){if(r){if(t.queryHash!==p(a,t.options))return!1}else if(!m(t.queryKey,a))return!1}if("all"!==s){let e=t.isActive();if("active"===s&&!e||"inactive"===s&&e)return!1}return("boolean"!=typeof o||t.isStale()===o)&&(!i||i===t.state.fetchStatus)&&(!n||!!n(t))}function d(e,t){let{exact:s,status:r,predicate:i,mutationKey:n}=e;if(n){if(!t.options.mutationKey)return!1;if(s){if(f(t.options.mutationKey)!==f(n))return!1}else if(!m(t.options.mutationKey,n))return!1}return(!r||t.state.status===r)&&(!i||!!i(t))}function p(e,t){return(t?.queryKeyHashFn||f)(e)}function f(e){return JSON.stringify(e,(e,t)=>g(t)?Object.keys(t).sort().reduce((e,s)=>(e[s]=t[s],e),{}):t)}function m(e,t){return e===t||typeof e==typeof t&&!!e&&!!t&&"object"==typeof e&&"object"==typeof t&&Object.keys(t).every(s=>m(e[s],t[s]))}var y=Object.prototype.hasOwnProperty;function v(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let s in e)if(e[s]!==t[s])return!1;return!0}function b(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function g(e){if(!x(e))return!1;let t=e.constructor;if(void 0===t)return!0;let s=t.prototype;return!!x(s)&&!!s.hasOwnProperty("isPrototypeOf")&&Object.getPrototypeOf(e)===Object.prototype}function x(e){return"[object Object]"===Object.prototype.toString.call(e)}function w(e){return new Promise(t=>{s.setTimeout(t,e)})}function S(e,t,s){return"function"==typeof s.structuralSharing?s.structuralSharing(e,t):!1!==s.structuralSharing?function e(t,s,r=0){if(t===s)return t;if(r>500)return s;let i=b(t)&&b(s);if(!i&&!(g(t)&&g(s)))return s;let n=(i?t:Object.keys(t)).length,a=i?s:Object.keys(s),o=a.length,l=i?Array(o):{},u=0;for(let c=0;c<o;c++){let o=i?c:a[c],h=t[o],d=s[o];if(h===d){l[o]=h,(i?c<n:y.call(t,o))&&u++;continue}if(null===h||null===d||"object"!=typeof h||"object"!=typeof d){l[o]=d;continue}let p=e(h,d,r+1);l[o]=p,p===h&&u++}return n===o&&u===n?t:l}(e,t):t}function j(e,t,s=0){let r=[...e,t];return s&&r.length>s?r.slice(1):r}function T(e,t,s=0){let r=[t,...e];return s&&r.length>s?r.slice(0,-1):r}var R=Symbol();function k(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:e.queryFn&&e.queryFn!==R?e.queryFn:()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`))}function C(e,t){return"function"==typeof e?e(...t):!!e}function O(e,t,s){let r,i=!1;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(r??=t(),i||(i=!0,r.aborted?s():r.addEventListener("abort",s,{once:!0})),r)}),e}e.s(["addConsumeAwareSignal",()=>O,"addToEnd",()=>j,"addToStart",()=>T,"ensureQueryFn",()=>k,"functionalUpdate",()=>a,"hashKey",()=>f,"hashQueryKeyByOptions",()=>p,"isServer",()=>i,"isValidTimeout",()=>o,"matchMutation",()=>d,"matchQuery",()=>h,"noop",()=>n,"partialMatchKey",()=>m,"replaceData",()=>S,"resolveEnabled",()=>c,"resolveStaleTime",()=>u,"shallowEqualObjects",()=>v,"shouldThrowError",()=>C,"skipToken",()=>R,"sleep",()=>w,"timeUntilStale",()=>l],3)},65617,e=>{"use strict";let t;var s=e.i(3),r=(t=()=>s.isServer,{isServer:()=>t(),setIsServer(e){t=e}});e.s(["environmentManager",()=>r])},6786,e=>{"use strict";let t,s,r,i,n,a;var o=e.i(68911).systemSetTimeoutZero,l=(t=[],s=0,r=e=>{e()},i=e=>{e()},n=o,{batch:e=>{let a;s++;try{a=e()}finally{let e;--s||(e=t,t=[],e.length&&n(()=>{i(()=>{e.forEach(e=>{r(e)})})}))}return a},batchCalls:e=>(...t)=>{a(()=>{e(...t)})},schedule:a=e=>{s?t.push(e):n(()=>{r(e)})},setNotifyFunction:e=>{r=e},setBatchNotifyFunction:e=>{i=e},setScheduler:e=>{n=e}});e.s(["notifyManager",()=>l])},13598,20820,e=>{"use strict";var t=e.i(77501),s=new class extends t.Subscribable{#n=!0;#t;#s;constructor(){super(),this.#s=e=>{if("u">typeof window&&window.addEventListener){let t=()=>e(!0),s=()=>e(!1);return window.addEventListener("online",t,!1),window.addEventListener("offline",s,!1),()=>{window.removeEventListener("online",t),window.removeEventListener("offline",s)}}}}onSubscribe(){this.#t||this.setEventListener(this.#s)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#s=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#n!==e&&(this.#n=e,this.listeners.forEach(t=>{t(e)}))}isOnline(){return this.#n}};function r(){let e,t,s=new Promise((s,r)=>{e=s,t=r});function r(e){Object.assign(s,e),delete s.resolve,delete s.reject}return s.status="pending",s.catch(()=>{}),s.resolve=t=>{r({status:"fulfilled",value:t}),e(t)},s.reject=e=>{r({status:"rejected",reason:e}),t(e)},s}e.s(["onlineManager",()=>s],13598),e.i(3),e.s(["pendingThenable",()=>r],20820)},28574,20979,19644,34682,e=>{"use strict";e.i(44172);var t=e.i(3),s=e.i(6786),r=e.i(4520),i=e.i(13598),n=e.i(20820),a=e.i(65617);function o(e){return Math.min(1e3*2**e,3e4)}function l(e){return(e??"online")!=="online"||i.onlineManager.isOnline()}var u=class extends Error{constructor(e){super("CancelledError"),this.revert=e?.revert,this.silent=e?.silent}};function c(e){let s,c=!1,h=0,d=(0,n.pendingThenable)(),p=()=>r.focusManager.isFocused()&&("always"===e.networkMode||i.onlineManager.isOnline())&&e.canRun(),f=()=>l(e.networkMode)&&e.canRun(),m=e=>{"pending"===d.status&&(s?.(),d.resolve(e))},y=e=>{"pending"===d.status&&(s?.(),d.reject(e))},v=()=>new Promise(t=>{s=e=>{("pending"!==d.status||p())&&t(e)},e.onPause?.()}).then(()=>{s=void 0,"pending"===d.status&&e.onContinue?.()}),b=()=>{let s;if("pending"!==d.status)return;let r=0===h?e.initialPromise:void 0;try{s=r??e.fn()}catch(e){s=Promise.reject(e)}Promise.resolve(s).then(m).catch(s=>{if("pending"!==d.status)return;let r=e.retry??3*!a.environmentManager.isServer(),i=e.retryDelay??o,n="function"==typeof i?i(h,s):i,l=!0===r||"number"==typeof r&&h<r||"function"==typeof r&&r(h,s);c||!l?y(s):(h++,e.onFail?.(h,s),(0,t.sleep)(n).then(()=>p()?void 0:v()).then(()=>{c?y(s):b()}))})};return{promise:d,status:()=>d.status,cancel:t=>{if("pending"===d.status){let s=new u(t);y(s),e.onCancel?.(s)}},continue:()=>(s?.(),d),cancelRetry:()=>{c=!0},continueRetry:()=>{c=!1},canStart:f,start:()=>(f()?b():v().then(b),d)}}e.s(["CancelledError",()=>u,"canFetch",()=>l,"createRetryer",()=>c],20979);var h=e.i(68911),d=class{#a;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),(0,t.isValidTimeout)(this.gcTime)&&(this.#a=h.timeoutManager.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(a.environmentManager.isServer()?1/0:3e5))}clearGcTimeout(){this.#a&&(h.timeoutManager.clearTimeout(this.#a),this.#a=void 0)}};e.s(["Removable",()=>d],19644);var p=class extends d{#o;#l;#u;#c;#h;#d;#p;constructor(e){super(),this.#p=!1,this.#d=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#c=e.client,this.#u=this.#c.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#o=y(this.options),this.state=e.state??this.#o,this.scheduleGc()}get meta(){return this.options.meta}get promise(){return this.#h?.promise}setOptions(e){if(this.options={...this.#d,...e},this.updateGcTime(this.options.gcTime),this.state&&void 0===this.state.data){let e=y(this.options);void 0!==e.data&&(this.setState(m(e.data,e.dataUpdatedAt)),this.#o=e)}}optionalRemove(){this.observers.length||"idle"!==this.state.fetchStatus||this.#u.remove(this)}setData(e,s){let r=(0,t.replaceData)(this.state.data,e,this.options);return this.#f({data:r,type:"success",dataUpdatedAt:s?.updatedAt,manual:s?.manual}),r}setState(e,t){this.#f({type:"setState",state:e,setStateOptions:t})}cancel(e){let s=this.#h?.promise;return this.#h?.cancel(e),s?s.then(t.noop).catch(t.noop):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#o}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>!1!==(0,t.resolveEnabled)(e.options.enabled,this))}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===t.skipToken||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0&&this.observers.some(e=>"static"===(0,t.resolveStaleTime)(e.options.staleTime,this))}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):void 0===this.state.data||this.state.isInvalidated}isStaleByTime(e=0){return void 0===this.state.data||"static"!==e&&(!!this.state.isInvalidated||!(0,t.timeUntilStale)(this.state.dataUpdatedAt,e))}onFocus(){let e=this.observers.find(e=>e.shouldFetchOnWindowFocus());e?.refetch({cancelRefetch:!1}),this.#h?.continue()}onOnline(){let e=this.observers.find(e=>e.shouldFetchOnReconnect());e?.refetch({cancelRefetch:!1}),this.#h?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#u.notify({type:"observerAdded",query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#h&&(this.#p||this.#m()?this.#h.cancel({revert:!0}):this.#h.cancelRetry()),this.scheduleGc()),this.#u.notify({type:"observerRemoved",query:this,observer:e}))}getObserversCount(){return this.observers.length}#m(){return"paused"===this.state.fetchStatus&&"pending"===this.state.status}invalidate(){this.state.isInvalidated||this.#f({type:"invalidate"})}async fetch(e,s){let r;if("idle"!==this.state.fetchStatus&&this.#h?.status()!=="rejected"){if(void 0!==this.state.data&&s?.cancelRefetch)this.cancel({silent:!0});else if(this.#h)return this.#h.continueRetry(),this.#h.promise}if(e&&this.setOptions(e),!this.options.queryFn){let e=this.observers.find(e=>e.options.queryFn);e&&this.setOptions(e.options)}let i=new AbortController,n=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#p=!0,i.signal)})},a=()=>{let e,r=(0,t.ensureQueryFn)(this.options,s),i=(n(e={client:this.#c,queryKey:this.queryKey,meta:this.meta}),e);return(this.#p=!1,this.options.persister)?this.options.persister(r,i,this):r(i)},o=(n(r={fetchOptions:s,options:this.options,queryKey:this.queryKey,client:this.#c,state:this.state,fetchFn:a}),r);this.options.behavior?.onFetch(o,this),this.#l=this.state,("idle"===this.state.fetchStatus||this.state.fetchMeta!==o.fetchOptions?.meta)&&this.#f({type:"fetch",meta:o.fetchOptions?.meta}),this.#h=c({initialPromise:s?.initialPromise,fn:o.fetchFn,onCancel:e=>{e instanceof u&&e.revert&&this.setState({...this.#l,fetchStatus:"idle"}),i.abort()},onFail:(e,t)=>{this.#f({type:"failed",failureCount:e,error:t})},onPause:()=>{this.#f({type:"pause"})},onContinue:()=>{this.#f({type:"continue"})},retry:o.options.retry,retryDelay:o.options.retryDelay,networkMode:o.options.networkMode,canRun:()=>!0});try{let e=await this.#h.start();if(void 0===e)throw Error(`${this.queryHash} data is undefined`);return this.setData(e),this.#u.config.onSuccess?.(e,this),this.#u.config.onSettled?.(e,this.state.error,this),e}catch(e){if(e instanceof u){if(e.silent)return this.#h.promise;else if(e.revert){if(void 0===this.state.data)throw e;return this.state.data}}throw this.#f({type:"error",error:e}),this.#u.config.onError?.(e,this),this.#u.config.onSettled?.(this.state.data,e,this),e}finally{this.scheduleGc()}}#f(e){let t=t=>{switch(e.type){case"failed":return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...t,fetchStatus:"paused"};case"continue":return{...t,fetchStatus:"fetching"};case"fetch":return{...t,...f(t.data,this.options),fetchMeta:e.meta??null};case"success":let s={...t,...m(e.data,e.dataUpdatedAt),dataUpdateCount:t.dataUpdateCount+1,...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return this.#l=e.manual?s:void 0,s;case"error":let r=e.error;return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...t,isInvalidated:!0};case"setState":return{...t,...e.state}}};this.state=t(this.state),s.notifyManager.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()}),this.#u.notify({query:this,type:"updated",action:e})})}};function f(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:l(t.networkMode)?"fetching":"paused",...void 0===e&&{error:null,status:"pending"}}}function m(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:"success"}}function y(e){let t="function"==typeof e.initialData?e.initialData():e.initialData,s=void 0!==t,r=s?"function"==typeof e.initialDataUpdatedAt?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:s?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:s?"success":"pending",fetchStatus:"idle"}}e.s(["Query",()=>p,"fetchState",()=>f],28574);var v=e.i(79054),b=e.i(20314),g=v.createContext(void 0),x=e=>{let t=v.useContext(g);if(e)return e;if(!t)throw Error("No QueryClient set, use QueryClientProvider to set one");return t},w=({client:e,children:t})=>(v.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,b.jsx)(g.Provider,{value:e,children:t}));e.s(["QueryClientProvider",()=>w,"useQueryClient",()=>x],34682)},62885,e=>{"use strict";let t;var s=e.i(4520),r=e.i(65617),i=e.i(6786),n=e.i(28574),a=e.i(77501),o=e.i(20820),l=e.i(3),u=e.i(68911),c=class extends a.Subscribable{constructor(e,t){super(),this.options=t,this.#c=e,this.#y=null,this.#v=(0,o.pendingThenable)(),this.bindMethods(),this.setOptions(t)}#c;#b=void 0;#g=void 0;#x=void 0;#w;#S;#v;#y;#j;#T;#R;#k;#C;#O;#I=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){1===this.listeners.size&&(this.#b.addObserver(this),h(this.#b,this.options)?this.#E():this.updateResult(),this.#F())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return d(this.#b,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return d(this.#b,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#M(),this.#Q(),this.#b.removeObserver(this)}setOptions(e){let t=this.options,s=this.#b;if(this.options=this.#c.defaultQueryOptions(e),void 0!==this.options.enabled&&"boolean"!=typeof this.options.enabled&&"function"!=typeof this.options.enabled&&"boolean"!=typeof(0,l.resolveEnabled)(this.options.enabled,this.#b))throw Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#N(),this.#b.setOptions(this.options),t._defaulted&&!(0,l.shallowEqualObjects)(this.options,t)&&this.#c.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#b,observer:this});let r=this.hasListeners();r&&p(this.#b,s,this.options,t)&&this.#E(),this.updateResult(),r&&(this.#b!==s||(0,l.resolveEnabled)(this.options.enabled,this.#b)!==(0,l.resolveEnabled)(t.enabled,this.#b)||(0,l.resolveStaleTime)(this.options.staleTime,this.#b)!==(0,l.resolveStaleTime)(t.staleTime,this.#b))&&this.#D();let i=this.#P();r&&(this.#b!==s||(0,l.resolveEnabled)(this.options.enabled,this.#b)!==(0,l.resolveEnabled)(t.enabled,this.#b)||i!==this.#O)&&this.#U(i)}getOptimisticResult(e){var t,s;let r=this.#c.getQueryCache().build(this.#c,e),i=this.createResult(r,e);return t=this,s=i,(0,l.shallowEqualObjects)(t.getCurrentResult(),s)||(this.#x=i,this.#S=this.options,this.#w=this.#b.state),i}getCurrentResult(){return this.#x}trackResult(e,t){return new Proxy(e,{get:(e,s)=>(this.trackProp(s),t?.(s),"promise"===s&&(this.trackProp("data"),this.options.experimental_prefetchInRender||"pending"!==this.#v.status||this.#v.reject(Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(e,s))})}trackProp(e){this.#I.add(e)}getCurrentQuery(){return this.#b}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=this.#c.defaultQueryOptions(e),s=this.#c.getQueryCache().build(this.#c,t);return s.fetch().then(()=>this.createResult(s,t))}fetch(e){return this.#E({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#x))}#E(e){this.#N();let t=this.#b.fetch(this.options,e);return e?.throwOnError||(t=t.catch(l.noop)),t}#D(){this.#M();let e=(0,l.resolveStaleTime)(this.options.staleTime,this.#b);if(r.environmentManager.isServer()||this.#x.isStale||!(0,l.isValidTimeout)(e))return;let t=(0,l.timeUntilStale)(this.#x.dataUpdatedAt,e);this.#k=u.timeoutManager.setTimeout(()=>{this.#x.isStale||this.updateResult()},t+1)}#P(){return("function"==typeof this.options.refetchInterval?this.options.refetchInterval(this.#b):this.options.refetchInterval)??!1}#U(e){this.#Q(),this.#O=e,!r.environmentManager.isServer()&&!1!==(0,l.resolveEnabled)(this.options.enabled,this.#b)&&(0,l.isValidTimeout)(this.#O)&&0!==this.#O&&(this.#C=u.timeoutManager.setInterval(()=>{(this.options.refetchIntervalInBackground||s.focusManager.isFocused())&&this.#E()},this.#O))}#F(){this.#D(),this.#U(this.#P())}#M(){this.#k&&(u.timeoutManager.clearTimeout(this.#k),this.#k=void 0)}#Q(){this.#C&&(u.timeoutManager.clearInterval(this.#C),this.#C=void 0)}createResult(e,t){let s,r=this.#b,i=this.options,a=this.#x,u=this.#w,c=this.#S,d=e!==r?e.state:this.#g,{state:m}=e,y={...m},v=!1;if(t._optimisticResults){let s=this.hasListeners(),a=!s&&h(e,t),o=s&&p(e,r,t,i);(a||o)&&(y={...y,...(0,n.fetchState)(m.data,e.options)}),"isRestoring"===t._optimisticResults&&(y.fetchStatus="idle")}let{error:b,errorUpdatedAt:g,status:x}=y;s=y.data;let w=!1;if(void 0!==t.placeholderData&&void 0===s&&"pending"===x){let e;a?.isPlaceholderData&&t.placeholderData===c?.placeholderData?(e=a.data,w=!0):e="function"==typeof t.placeholderData?t.placeholderData(this.#R?.state.data,this.#R):t.placeholderData,void 0!==e&&(x="success",s=(0,l.replaceData)(a?.data,e,t),v=!0)}if(t.select&&void 0!==s&&!w)if(a&&s===u?.data&&t.select===this.#j)s=this.#T;else try{this.#j=t.select,s=t.select(s),s=(0,l.replaceData)(a?.data,s,t),this.#T=s,this.#y=null}catch(e){this.#y=e}this.#y&&(b=this.#y,s=this.#T,g=Date.now(),x="error");let S="fetching"===y.fetchStatus,j="pending"===x,T="error"===x,R=j&&S,k=void 0!==s,C={status:x,fetchStatus:y.fetchStatus,isPending:j,isSuccess:"success"===x,isError:T,isInitialLoading:R,isLoading:R,data:s,dataUpdatedAt:y.dataUpdatedAt,error:b,errorUpdatedAt:g,failureCount:y.fetchFailureCount,failureReason:y.fetchFailureReason,errorUpdateCount:y.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:y.dataUpdateCount>d.dataUpdateCount||y.errorUpdateCount>d.errorUpdateCount,isFetching:S,isRefetching:S&&!j,isLoadingError:T&&!k,isPaused:"paused"===y.fetchStatus,isPlaceholderData:v,isRefetchError:T&&k,isStale:f(e,t),refetch:this.refetch,promise:this.#v,isEnabled:!1!==(0,l.resolveEnabled)(t.enabled,e)};if(this.options.experimental_prefetchInRender){let t=void 0!==C.data,s="error"===C.status&&!t,i=e=>{s?e.reject(C.error):t&&e.resolve(C.data)},n=()=>{i(this.#v=C.promise=(0,o.pendingThenable)())},a=this.#v;switch(a.status){case"pending":e.queryHash===r.queryHash&&i(a);break;case"fulfilled":(s||C.data!==a.value)&&n();break;case"rejected":s&&C.error===a.reason||n()}}return C}updateResult(){let e=this.#x,t=this.createResult(this.#b,this.options);if(this.#w=this.#b.state,this.#S=this.options,void 0!==this.#w.data&&(this.#R=this.#b),(0,l.shallowEqualObjects)(t,e))return;this.#x=t;let s=()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,s="function"==typeof t?t():t;if("all"===s||!s&&!this.#I.size)return!0;let r=new Set(s??this.#I);return this.options.throwOnError&&r.add("error"),Object.keys(this.#x).some(t=>this.#x[t]!==e[t]&&r.has(t))};this.#A({listeners:s()})}#N(){let e=this.#c.getQueryCache().build(this.#c,this.options);if(e===this.#b)return;let t=this.#b;this.#b=e,this.#g=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#F()}#A(e){i.notifyManager.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#x)}),this.#c.getQueryCache().notify({query:this.#b,type:"observerResultsUpdated"})})}};function h(e,t){return!1!==(0,l.resolveEnabled)(t.enabled,e)&&void 0===e.state.data&&("error"!==e.state.status||!1!==t.retryOnMount)||void 0!==e.state.data&&d(e,t,t.refetchOnMount)}function d(e,t,s){if(!1!==(0,l.resolveEnabled)(t.enabled,e)&&"static"!==(0,l.resolveStaleTime)(t.staleTime,e)){let r="function"==typeof s?s(e):s;return"always"===r||!1!==r&&f(e,t)}return!1}function p(e,t,s,r){return(e!==t||!1===(0,l.resolveEnabled)(r.enabled,e))&&(!s.suspense||"error"!==e.state.status)&&f(e,s)}function f(e,t){return!1!==(0,l.resolveEnabled)(t.enabled,e)&&e.isStaleByTime((0,l.resolveStaleTime)(t.staleTime,e))}e.i(44172);var m=e.i(79054),y=e.i(34682);e.i(20314);var v=m.createContext((t=!1,{clearReset:()=>{t=!1},reset:()=>{t=!0},isReset:()=>t})),b=m.createContext(!1);b.Provider;var g=(e,t,s)=>t.fetchOptimistic(e).catch(()=>{s.clearReset()});function x(e,t){return function(e,t,s){let n,a=m.useContext(b),o=m.useContext(v),u=(0,y.useQueryClient)(s),c=u.defaultQueryOptions(e);u.getDefaultOptions().queries?._experimental_beforeQuery?.(c);let h=u.getQueryCache().get(c.queryHash);if(c._optimisticResults=a?"isRestoring":"optimistic",c.suspense){let e=e=>"static"===e?e:Math.max(e??1e3,1e3),t=c.staleTime;c.staleTime="function"==typeof t?(...s)=>e(t(...s)):e(t),"number"==typeof c.gcTime&&(c.gcTime=Math.max(c.gcTime,1e3))}n=h?.state.error&&"function"==typeof c.throwOnError?(0,l.shouldThrowError)(c.throwOnError,[h.state.error,h]):c.throwOnError,(c.suspense||c.experimental_prefetchInRender||n)&&!o.isReset()&&(c.retryOnMount=!1),m.useEffect(()=>{o.clearReset()},[o]);let d=!u.getQueryCache().get(c.queryHash),[p]=m.useState(()=>new t(u,c)),f=p.getOptimisticResult(c),x=!a&&!1!==e.subscribed;if(m.useSyncExternalStore(m.useCallback(e=>{let t=x?p.subscribe(i.notifyManager.batchCalls(e)):l.noop;return p.updateResult(),t},[p,x]),()=>p.getCurrentResult(),()=>p.getCurrentResult()),m.useEffect(()=>{p.setOptions(c)},[c,p]),c?.suspense&&f.isPending)throw g(c,p,o);if((({result:e,errorResetBoundary:t,throwOnError:s,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&void 0===e.data||(0,l.shouldThrowError)(s,[e.error,r])))({result:f,errorResetBoundary:o,throwOnError:c.throwOnError,query:h,suspense:c.suspense}))throw f.error;if(u.getDefaultOptions().queries?._experimental_afterQuery?.(c,f),c.experimental_prefetchInRender&&!r.environmentManager.isServer()&&f.isLoading&&f.isFetching&&!a){let e=d?g(c,p,o):h?.promise;e?.catch(l.noop).finally(()=>{p.updateResult()})}return c.notifyOnChangeProps?f:p.trackResult(f)}(e,c,t)}e.s(["useQuery",()=>x],62885)}]);