@shepai/cli 1.183.0-pr554.2632d62 → 1.183.0-pr555.e53ab0e

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 (1211) hide show
  1. package/apis/json-schema/Application.yaml +0 -22
  2. package/apis/json-schema/Feature.yaml +3 -0
  3. package/apis/json-schema/NotificationEventConfig.yaml +0 -4
  4. package/apis/json-schema/NotificationEventType.yaml +0 -1
  5. package/apis/json-schema/Plugin.yaml +86 -0
  6. package/apis/json-schema/PluginHealthStatus.yaml +9 -0
  7. package/apis/json-schema/PluginTransport.yaml +7 -0
  8. package/apis/json-schema/PluginType.yaml +8 -0
  9. package/apis/json-schema/RecordBoolean.yaml +6 -0
  10. package/apis/json-schema/ToolGroup.yaml +18 -0
  11. package/dist/eslint.config.mjs +0 -19
  12. package/dist/packages/core/src/application/ports/output/agents/agent-executor.interface.d.ts +7 -0
  13. package/dist/packages/core/src/application/ports/output/agents/agent-executor.interface.d.ts.map +1 -1
  14. package/dist/packages/core/src/application/ports/output/agents/index.d.ts +0 -1
  15. package/dist/packages/core/src/application/ports/output/agents/index.d.ts.map +1 -1
  16. package/dist/packages/core/src/application/ports/output/repositories/application-repository.interface.d.ts +1 -1
  17. package/dist/packages/core/src/application/ports/output/repositories/application-repository.interface.d.ts.map +1 -1
  18. package/dist/packages/core/src/application/ports/output/repositories/index.d.ts +1 -0
  19. package/dist/packages/core/src/application/ports/output/repositories/index.d.ts.map +1 -1
  20. package/dist/packages/core/src/application/ports/output/repositories/plugin-repository.interface.d.ts +60 -0
  21. package/dist/packages/core/src/application/ports/output/repositories/plugin-repository.interface.d.ts.map +1 -0
  22. package/dist/packages/core/src/application/ports/output/repositories/plugin-repository.interface.js +11 -0
  23. package/dist/packages/core/src/application/ports/output/services/index.d.ts +2 -5
  24. package/dist/packages/core/src/application/ports/output/services/index.d.ts.map +1 -1
  25. package/dist/packages/core/src/application/ports/output/services/mcp-server-manager.interface.d.ts +66 -0
  26. package/dist/packages/core/src/application/ports/output/services/mcp-server-manager.interface.d.ts.map +1 -0
  27. package/dist/packages/core/src/application/ports/output/services/mcp-server-manager.interface.js +12 -0
  28. package/dist/packages/core/src/application/ports/output/services/plugin-health-checker.interface.d.ts +49 -0
  29. package/dist/packages/core/src/application/ports/output/services/plugin-health-checker.interface.d.ts.map +1 -0
  30. package/dist/packages/core/src/application/ports/output/services/plugin-health-checker.interface.js +12 -0
  31. package/dist/packages/core/src/application/services/agents/agent-session-repository.registry.d.ts +24 -0
  32. package/dist/packages/core/src/application/services/agents/agent-session-repository.registry.d.ts.map +1 -0
  33. package/dist/packages/core/src/{infrastructure → application}/services/agents/agent-session-repository.registry.js +5 -10
  34. package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.d.ts +1 -5
  35. package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.d.ts.map +1 -1
  36. package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.js +6 -10
  37. package/dist/packages/core/src/application/use-cases/agents/check-agent-auth.use-case.d.ts +1 -3
  38. package/dist/packages/core/src/application/use-cases/agents/check-agent-auth.use-case.d.ts.map +1 -1
  39. package/dist/packages/core/src/application/use-cases/agents/check-agent-auth.use-case.js +4 -10
  40. package/dist/packages/core/src/application/use-cases/agents/get-agent-session.use-case.d.ts +2 -4
  41. package/dist/packages/core/src/application/use-cases/agents/get-agent-session.use-case.d.ts.map +1 -1
  42. package/dist/packages/core/src/application/use-cases/agents/get-agent-session.use-case.js +8 -15
  43. package/dist/packages/core/src/application/use-cases/agents/list-agent-sessions.use-case.d.ts +2 -4
  44. package/dist/packages/core/src/application/use-cases/agents/list-agent-sessions.use-case.d.ts.map +1 -1
  45. package/dist/packages/core/src/application/use-cases/agents/list-agent-sessions.use-case.js +8 -15
  46. package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.d.ts +1 -7
  47. package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.d.ts.map +1 -1
  48. package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.js +8 -15
  49. package/dist/packages/core/src/application/use-cases/agents/stop-agent-run.use-case.d.ts +1 -3
  50. package/dist/packages/core/src/application/use-cases/agents/stop-agent-run.use-case.d.ts.map +1 -1
  51. package/dist/packages/core/src/application/use-cases/agents/stop-agent-run.use-case.js +5 -7
  52. package/dist/packages/core/src/application/use-cases/applications/create-application.use-case.d.ts +1 -3
  53. package/dist/packages/core/src/application/use-cases/applications/create-application.use-case.d.ts.map +1 -1
  54. package/dist/packages/core/src/application/use-cases/applications/create-application.use-case.js +7 -12
  55. package/dist/packages/core/src/application/use-cases/applications/delete-application.use-case.d.ts.map +1 -1
  56. package/dist/packages/core/src/application/use-cases/applications/delete-application.use-case.js +1 -2
  57. package/dist/packages/core/src/application/use-cases/applications/list-applications.use-case.d.ts.map +1 -1
  58. package/dist/packages/core/src/application/use-cases/applications/list-applications.use-case.js +1 -2
  59. package/dist/packages/core/src/application/use-cases/applications/resume-application-workflow.use-case.d.ts.map +1 -1
  60. package/dist/packages/core/src/application/use-cases/applications/resume-application-workflow.use-case.js +2 -3
  61. package/dist/packages/core/src/application/use-cases/deployments/start-feature-deployment.use-case.d.ts +1 -3
  62. package/dist/packages/core/src/application/use-cases/deployments/start-feature-deployment.use-case.d.ts.map +1 -1
  63. package/dist/packages/core/src/application/use-cases/deployments/start-feature-deployment.use-case.js +4 -7
  64. package/dist/packages/core/src/application/use-cases/features/cleanup-feature-worktree.use-case.d.ts +1 -3
  65. package/dist/packages/core/src/application/use-cases/features/cleanup-feature-worktree.use-case.d.ts.map +1 -1
  66. package/dist/packages/core/src/application/use-cases/features/cleanup-feature-worktree.use-case.js +10 -17
  67. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.d.ts +2 -10
  68. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.d.ts.map +1 -1
  69. package/dist/packages/core/src/application/use-cases/features/create/create-feature.use-case.js +10 -20
  70. package/dist/packages/core/src/application/use-cases/features/create/types.d.ts +2 -0
  71. package/dist/packages/core/src/application/use-cases/features/create/types.d.ts.map +1 -1
  72. package/dist/packages/core/src/application/use-cases/features/get-feature-artifact.use-case.d.ts +1 -3
  73. package/dist/packages/core/src/application/use-cases/features/get-feature-artifact.use-case.d.ts.map +1 -1
  74. package/dist/packages/core/src/application/use-cases/features/get-feature-artifact.use-case.js +4 -6
  75. package/dist/packages/core/src/application/use-cases/features/get-plan-artifact.use-case.d.ts +1 -3
  76. package/dist/packages/core/src/application/use-cases/features/get-plan-artifact.use-case.d.ts.map +1 -1
  77. package/dist/packages/core/src/application/use-cases/features/get-plan-artifact.use-case.js +4 -6
  78. package/dist/packages/core/src/application/use-cases/features/get-research-artifact.use-case.d.ts +1 -3
  79. package/dist/packages/core/src/application/use-cases/features/get-research-artifact.use-case.d.ts.map +1 -1
  80. package/dist/packages/core/src/application/use-cases/features/get-research-artifact.use-case.js +4 -6
  81. package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.d.ts +2 -2
  82. package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.d.ts.map +1 -1
  83. package/dist/packages/core/src/application/use-cases/features/rebase-feature-on-main.use-case.js +2 -2
  84. package/dist/packages/core/src/application/use-cases/ide/launch-ide.use-case.d.ts +1 -3
  85. package/dist/packages/core/src/application/use-cases/ide/launch-ide.use-case.d.ts.map +1 -1
  86. package/dist/packages/core/src/application/use-cases/ide/launch-ide.use-case.js +4 -8
  87. package/dist/packages/core/src/application/use-cases/plugins/add-plugin.use-case.d.ts +35 -0
  88. package/dist/packages/core/src/application/use-cases/plugins/add-plugin.use-case.d.ts.map +1 -0
  89. package/dist/packages/core/src/application/use-cases/plugins/add-plugin.use-case.js +106 -0
  90. package/dist/packages/core/src/application/use-cases/plugins/check-plugin-health.use-case.d.ts +20 -0
  91. package/dist/packages/core/src/application/use-cases/plugins/check-plugin-health.use-case.d.ts.map +1 -0
  92. package/dist/packages/core/src/application/use-cases/plugins/check-plugin-health.use-case.js +72 -0
  93. package/dist/packages/core/src/application/use-cases/plugins/configure-plugin.use-case.d.ts +22 -0
  94. package/dist/packages/core/src/application/use-cases/plugins/configure-plugin.use-case.d.ts.map +1 -0
  95. package/dist/packages/core/src/application/use-cases/plugins/configure-plugin.use-case.js +59 -0
  96. package/dist/packages/core/src/application/use-cases/plugins/disable-plugin.use-case.d.ts +18 -0
  97. package/dist/packages/core/src/application/use-cases/plugins/disable-plugin.use-case.d.ts.map +1 -0
  98. package/dist/packages/core/src/application/use-cases/{cloud-deploy/ensure-gh-authenticated.use-case.js → plugins/disable-plugin.use-case.js} +31 -12
  99. package/dist/packages/core/src/application/use-cases/plugins/enable-plugin.use-case.d.ts +18 -0
  100. package/dist/packages/core/src/application/use-cases/plugins/enable-plugin.use-case.d.ts.map +1 -0
  101. package/dist/packages/core/src/application/use-cases/{cloud-deploy/select-cloud-provider.use-case.js → plugins/enable-plugin.use-case.js} +31 -17
  102. package/dist/packages/core/src/application/use-cases/plugins/get-plugin-catalog.use-case.d.ts +21 -0
  103. package/dist/packages/core/src/application/use-cases/plugins/get-plugin-catalog.use-case.d.ts.map +1 -0
  104. package/dist/packages/core/src/application/use-cases/plugins/get-plugin-catalog.use-case.js +45 -0
  105. package/dist/packages/core/src/application/use-cases/plugins/list-plugins.use-case.d.ts +22 -0
  106. package/dist/packages/core/src/application/use-cases/plugins/list-plugins.use-case.d.ts.map +1 -0
  107. package/dist/packages/core/src/application/use-cases/plugins/list-plugins.use-case.js +50 -0
  108. package/dist/packages/core/src/application/use-cases/plugins/remove-plugin.use-case.d.ts +21 -0
  109. package/dist/packages/core/src/application/use-cases/plugins/remove-plugin.use-case.d.ts.map +1 -0
  110. package/dist/packages/core/src/application/use-cases/plugins/remove-plugin.use-case.js +50 -0
  111. package/dist/packages/core/src/application/use-cases/repositories/add-repository.use-case.d.ts.map +1 -1
  112. package/dist/packages/core/src/application/use-cases/repositories/add-repository.use-case.js +11 -1
  113. package/dist/packages/core/src/application/use-cases/repositories/import-github-repository.use-case.d.ts.map +1 -1
  114. package/dist/packages/core/src/application/use-cases/repositories/import-github-repository.use-case.js +9 -1
  115. package/dist/packages/core/src/application/use-cases/settings/check-onboarding-status.use-case.d.ts +2 -6
  116. package/dist/packages/core/src/application/use-cases/settings/check-onboarding-status.use-case.d.ts.map +1 -1
  117. package/dist/packages/core/src/application/use-cases/settings/check-onboarding-status.use-case.js +7 -30
  118. package/dist/packages/core/src/application/use-cases/tools/launch-tool.use-case.d.ts +1 -3
  119. package/dist/packages/core/src/application/use-cases/tools/launch-tool.use-case.d.ts.map +1 -1
  120. package/dist/packages/core/src/application/use-cases/tools/launch-tool.use-case.js +4 -6
  121. package/dist/packages/core/src/application/use-cases/tools/list-tools.use-case.d.ts +1 -3
  122. package/dist/packages/core/src/application/use-cases/tools/list-tools.use-case.d.ts.map +1 -1
  123. package/dist/packages/core/src/application/use-cases/tools/list-tools.use-case.js +4 -6
  124. package/dist/packages/core/src/application/use-cases/workflows/run-workflow.use-case.d.ts +2 -4
  125. package/dist/packages/core/src/application/use-cases/workflows/run-workflow.use-case.d.ts.map +1 -1
  126. package/dist/packages/core/src/application/use-cases/workflows/run-workflow.use-case.js +4 -8
  127. package/dist/packages/core/src/application/workflows/application-creation.workflow.d.ts.map +1 -0
  128. package/dist/packages/core/src/domain/factories/index.d.ts +1 -0
  129. package/dist/packages/core/src/domain/factories/index.d.ts.map +1 -1
  130. package/dist/packages/core/src/domain/factories/index.js +1 -0
  131. package/dist/packages/core/src/domain/factories/spec-yaml-parser.d.ts +29 -0
  132. package/dist/packages/core/src/domain/factories/spec-yaml-parser.d.ts.map +1 -0
  133. package/dist/packages/core/src/domain/factories/spec-yaml-parser.js +134 -0
  134. package/dist/packages/core/src/domain/generated/output.d.ts +113 -41
  135. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  136. package/dist/packages/core/src/domain/generated/output.js +18 -25
  137. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  138. package/dist/packages/core/src/infrastructure/di/container.js +679 -32
  139. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/application.mapper.d.ts +0 -7
  140. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/application.mapper.d.ts.map +1 -1
  141. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/application.mapper.js +6 -23
  142. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts +1 -0
  143. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.d.ts.map +1 -1
  144. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/feature.mapper.js +8 -0
  145. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/plugin.mapper.d.ts +61 -0
  146. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/plugin.mapper.d.ts.map +1 -0
  147. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/plugin.mapper.js +91 -0
  148. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-create-plugins-table.d.ts +13 -0
  149. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-create-plugins-table.d.ts.map +1 -0
  150. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-create-plugins-table.js +51 -0
  151. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-add-active-plugins-to-features.d.ts +12 -0
  152. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-add-active-plugins-to-features.d.ts.map +1 -0
  153. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-add-active-plugins-to-features.js +17 -0
  154. package/dist/packages/core/src/infrastructure/repositories/sqlite-application.repository.d.ts +1 -1
  155. package/dist/packages/core/src/infrastructure/repositories/sqlite-application.repository.d.ts.map +1 -1
  156. package/dist/packages/core/src/infrastructure/repositories/sqlite-application.repository.js +2 -40
  157. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.d.ts.map +1 -1
  158. package/dist/packages/core/src/infrastructure/repositories/sqlite-feature.repository.js +3 -0
  159. package/dist/packages/core/src/infrastructure/repositories/sqlite-plugin.repository.d.ts +24 -0
  160. package/dist/packages/core/src/infrastructure/repositories/sqlite-plugin.repository.d.ts.map +1 -0
  161. package/dist/packages/core/src/infrastructure/repositories/sqlite-plugin.repository.js +114 -0
  162. package/dist/packages/core/src/infrastructure/services/agents/analyze-repo/analyze-repository-graph.d.ts +1 -1
  163. package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-executor.service.d.ts.map +1 -1
  164. package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-executor.service.js +2 -0
  165. package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.d.ts +1 -2
  166. package/dist/packages/core/src/infrastructure/services/agents/conflict-resolution/conflict-resolution.service.d.ts.map +1 -1
  167. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts +6 -1
  168. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/fast-feature-agent-graph.d.ts.map +1 -1
  169. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts +18 -1
  170. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-graph.d.ts.map +1 -1
  171. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts.map +1 -1
  172. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.js +12 -0
  173. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.d.ts.map +1 -1
  174. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.js +1 -0
  175. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/plugin-startup.d.ts +23 -0
  176. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/plugin-startup.d.ts.map +1 -0
  177. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/plugin-startup.js +53 -0
  178. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts +1 -0
  179. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.d.ts.map +1 -1
  180. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/state.js +5 -0
  181. package/dist/packages/core/src/infrastructure/services/attachment-storage.service.d.ts +5 -3
  182. package/dist/packages/core/src/infrastructure/services/attachment-storage.service.d.ts.map +1 -1
  183. package/dist/packages/core/src/infrastructure/services/notifications/notification.service.d.ts.map +1 -1
  184. package/dist/packages/core/src/infrastructure/services/notifications/notification.service.js +0 -1
  185. package/dist/packages/core/src/infrastructure/services/plugin/mcp-server-manager.service.d.ts +51 -0
  186. package/dist/packages/core/src/infrastructure/services/plugin/mcp-server-manager.service.d.ts.map +1 -0
  187. package/dist/packages/core/src/infrastructure/services/plugin/mcp-server-manager.service.js +206 -0
  188. package/dist/packages/core/src/infrastructure/services/plugin/plugin-catalog.d.ts +52 -0
  189. package/dist/packages/core/src/infrastructure/services/plugin/plugin-catalog.d.ts.map +1 -0
  190. package/dist/packages/core/src/infrastructure/services/plugin/plugin-catalog.js +86 -0
  191. package/dist/packages/core/src/infrastructure/services/plugin/plugin-health-checker.service.d.ts +28 -0
  192. package/dist/packages/core/src/infrastructure/services/plugin/plugin-health-checker.service.d.ts.map +1 -0
  193. package/dist/packages/core/src/infrastructure/services/plugin/plugin-health-checker.service.js +95 -0
  194. package/dist/src/presentation/cli/commands/app/index.d.ts +4 -10
  195. package/dist/src/presentation/cli/commands/app/index.d.ts.map +1 -1
  196. package/dist/src/presentation/cli/commands/app/index.js +5 -17
  197. package/dist/src/presentation/cli/commands/feat/new.command.d.ts.map +1 -1
  198. package/dist/src/presentation/cli/commands/feat/new.command.js +1 -2
  199. package/dist/src/presentation/cli/commands/plugin/add.command.d.ts +12 -0
  200. package/dist/src/presentation/cli/commands/plugin/add.command.d.ts.map +1 -0
  201. package/dist/src/presentation/cli/commands/plugin/add.command.js +75 -0
  202. package/dist/src/presentation/cli/commands/plugin/catalog.command.d.ts +11 -0
  203. package/dist/src/presentation/cli/commands/plugin/catalog.command.d.ts.map +1 -0
  204. package/dist/src/presentation/cli/commands/plugin/catalog.command.js +46 -0
  205. package/dist/src/presentation/cli/commands/plugin/configure.command.d.ts +11 -0
  206. package/dist/src/presentation/cli/commands/plugin/configure.command.d.ts.map +1 -0
  207. package/dist/src/presentation/cli/commands/plugin/configure.command.js +37 -0
  208. package/dist/src/presentation/cli/commands/plugin/disable.command.d.ts +11 -0
  209. package/dist/src/presentation/cli/commands/plugin/disable.command.d.ts.map +1 -0
  210. package/dist/src/presentation/cli/commands/plugin/disable.command.js +31 -0
  211. package/dist/src/presentation/cli/commands/plugin/enable.command.d.ts +11 -0
  212. package/dist/src/presentation/cli/commands/plugin/enable.command.d.ts.map +1 -0
  213. package/dist/src/presentation/cli/commands/plugin/enable.command.js +31 -0
  214. package/dist/src/presentation/cli/commands/plugin/index.d.ts +22 -0
  215. package/dist/src/presentation/cli/commands/plugin/index.d.ts.map +1 -0
  216. package/dist/src/presentation/cli/commands/plugin/index.js +41 -0
  217. package/dist/src/presentation/cli/commands/plugin/list.command.d.ts +11 -0
  218. package/dist/src/presentation/cli/commands/plugin/list.command.d.ts.map +1 -0
  219. package/dist/src/presentation/cli/commands/plugin/list.command.js +63 -0
  220. package/dist/src/presentation/cli/commands/plugin/remove.command.d.ts +11 -0
  221. package/dist/src/presentation/cli/commands/plugin/remove.command.d.ts.map +1 -0
  222. package/dist/src/presentation/cli/commands/plugin/remove.command.js +31 -0
  223. package/dist/src/presentation/cli/commands/plugin/status.command.d.ts +12 -0
  224. package/dist/src/presentation/cli/commands/plugin/status.command.d.ts.map +1 -0
  225. package/dist/src/presentation/cli/commands/plugin/status.command.js +126 -0
  226. package/dist/src/presentation/cli/index.js +2 -0
  227. package/dist/src/presentation/web/app/(dashboard)/@drawer/create/page.d.ts.map +1 -1
  228. package/dist/src/presentation/web/app/(dashboard)/@drawer/create/page.js +9 -2
  229. package/dist/src/presentation/web/app/actions/add-plugin.d.ts +7 -0
  230. package/dist/src/presentation/web/app/actions/add-plugin.d.ts.map +1 -0
  231. package/dist/src/presentation/web/app/actions/add-plugin.js +15 -0
  232. package/dist/src/presentation/web/app/actions/check-plugin-health.d.ts +7 -0
  233. package/dist/src/presentation/web/app/actions/check-plugin-health.d.ts.map +1 -0
  234. package/dist/src/presentation/web/app/actions/check-plugin-health.js +15 -0
  235. package/dist/src/presentation/web/app/actions/configure-plugin.d.ts +7 -0
  236. package/dist/src/presentation/web/app/actions/configure-plugin.d.ts.map +1 -0
  237. package/dist/src/presentation/web/app/actions/configure-plugin.js +15 -0
  238. package/dist/src/presentation/web/app/actions/create-feature.d.ts +2 -0
  239. package/dist/src/presentation/web/app/actions/create-feature.d.ts.map +1 -1
  240. package/dist/src/presentation/web/app/actions/create-feature.js +3 -1
  241. package/dist/src/presentation/web/app/actions/deploy-application.d.ts +9 -8
  242. package/dist/src/presentation/web/app/actions/deploy-application.d.ts.map +1 -1
  243. package/dist/src/presentation/web/app/actions/deploy-application.js +38 -22
  244. package/dist/src/presentation/web/app/actions/get-plugin-catalog.d.ts +7 -0
  245. package/dist/src/presentation/web/app/actions/get-plugin-catalog.d.ts.map +1 -0
  246. package/dist/src/presentation/web/app/actions/get-plugin-catalog.js +13 -0
  247. package/dist/src/presentation/web/app/actions/list-plugins.d.ts +7 -0
  248. package/dist/src/presentation/web/app/actions/list-plugins.d.ts.map +1 -0
  249. package/dist/src/presentation/web/app/actions/list-plugins.js +13 -0
  250. package/dist/src/presentation/web/app/actions/remove-plugin.d.ts +7 -0
  251. package/dist/src/presentation/web/app/actions/remove-plugin.d.ts.map +1 -0
  252. package/dist/src/presentation/web/app/actions/remove-plugin.js +15 -0
  253. package/dist/src/presentation/web/app/actions/toggle-plugin.d.ts +7 -0
  254. package/dist/src/presentation/web/app/actions/toggle-plugin.d.ts.map +1 -0
  255. package/dist/src/presentation/web/app/actions/toggle-plugin.js +23 -0
  256. package/dist/src/presentation/web/app/api/agent-events/route.d.ts +12 -17
  257. package/dist/src/presentation/web/app/api/agent-events/route.d.ts.map +1 -1
  258. package/dist/src/presentation/web/app/api/agent-events/route.js +331 -58
  259. package/dist/src/presentation/web/app/api/applications/[id]/route.d.ts.map +1 -1
  260. package/dist/src/presentation/web/app/api/applications/[id]/route.js +1 -4
  261. package/dist/src/presentation/web/app/api/deployment-logs/route.d.ts.map +1 -1
  262. package/dist/src/presentation/web/app/api/deployment-logs/route.js +2 -4
  263. package/dist/src/presentation/web/app/build-graph-nodes.d.ts.map +1 -1
  264. package/dist/src/presentation/web/app/build-graph-nodes.js +1 -2
  265. package/dist/src/presentation/web/app/plugins/page.d.ts +4 -0
  266. package/dist/src/presentation/web/app/plugins/page.d.ts.map +1 -0
  267. package/dist/src/presentation/web/app/plugins/page.js +24 -0
  268. package/dist/src/presentation/web/app/plugins/plugins-page-client.d.ts +8 -0
  269. package/dist/src/presentation/web/app/plugins/plugins-page-client.d.ts.map +1 -0
  270. package/dist/src/presentation/web/app/plugins/plugins-page-client.js +61 -0
  271. package/dist/src/presentation/web/components/common/application-node/application-node.d.ts.map +1 -1
  272. package/dist/src/presentation/web/components/common/application-node/application-node.js +1 -2
  273. package/dist/src/presentation/web/components/common/control-center-drawer/create-drawer-client.d.ts +6 -1
  274. package/dist/src/presentation/web/components/common/control-center-drawer/create-drawer-client.d.ts.map +1 -1
  275. package/dist/src/presentation/web/components/common/control-center-drawer/create-drawer-client.js +2 -2
  276. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts +9 -1
  277. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
  278. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +15 -3
  279. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.d.ts.map +1 -1
  280. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.js +0 -4
  281. package/dist/src/presentation/web/components/common/plugin-catalog/index.d.ts +2 -0
  282. package/dist/src/presentation/web/components/common/plugin-catalog/index.d.ts.map +1 -0
  283. package/dist/src/presentation/web/components/common/plugin-catalog/index.js +1 -0
  284. package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.d.ts +7 -0
  285. package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.d.ts.map +1 -0
  286. package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.js +32 -0
  287. package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.stories.d.ts +16 -0
  288. package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.stories.d.ts.map +1 -0
  289. package/dist/src/presentation/web/components/common/plugin-catalog/plugin-catalog.stories.js +87 -0
  290. package/dist/src/presentation/web/components/common/plugin-list/index.d.ts +2 -0
  291. package/dist/src/presentation/web/components/common/plugin-list/index.d.ts.map +1 -0
  292. package/dist/src/presentation/web/components/common/plugin-list/index.js +1 -0
  293. package/dist/src/presentation/web/components/common/plugin-list/plugin-list.d.ts +9 -0
  294. package/dist/src/presentation/web/components/common/plugin-list/plugin-list.d.ts.map +1 -0
  295. package/dist/src/presentation/web/components/common/plugin-list/plugin-list.js +77 -0
  296. package/dist/src/presentation/web/components/common/plugin-list/plugin-list.stories.d.ts +17 -0
  297. package/dist/src/presentation/web/components/common/plugin-list/plugin-list.stories.d.ts.map +1 -0
  298. package/dist/src/presentation/web/components/common/plugin-list/plugin-list.stories.js +114 -0
  299. package/dist/src/presentation/web/components/features/application-page/application-page.d.ts.map +1 -1
  300. package/dist/src/presentation/web/components/features/application-page/application-page.js +306 -17
  301. package/dist/src/presentation/web/components/features/applications/application-card.d.ts.map +1 -1
  302. package/dist/src/presentation/web/components/features/applications/application-card.js +1 -2
  303. package/dist/src/presentation/web/components/features/chat/workflow-placeholder.d.ts +1 -1
  304. package/dist/src/presentation/web/components/features/chat/workflow-placeholder.js +1 -1
  305. package/dist/src/presentation/web/components/features/control-center/use-control-center-state.d.ts.map +1 -1
  306. package/dist/src/presentation/web/components/features/control-center/use-control-center-state.js +1 -2
  307. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts.map +1 -1
  308. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.js +2 -2
  309. package/dist/src/presentation/web/hooks/deployment-status-provider.js +3 -4
  310. package/dist/translations/ar/cli.json +82 -0
  311. package/dist/translations/ar/web.json +2 -1
  312. package/dist/translations/de/cli.json +82 -0
  313. package/dist/translations/de/web.json +2 -1
  314. package/dist/translations/en/cli.json +82 -0
  315. package/dist/translations/en/web.json +2 -1
  316. package/dist/translations/es/cli.json +82 -0
  317. package/dist/translations/es/web.json +2 -1
  318. package/dist/translations/fr/cli.json +82 -0
  319. package/dist/translations/fr/web.json +2 -1
  320. package/dist/translations/he/cli.json +82 -0
  321. package/dist/translations/he/web.json +2 -1
  322. package/dist/translations/pt/cli.json +82 -0
  323. package/dist/translations/pt/web.json +2 -1
  324. package/dist/translations/ru/cli.json +82 -0
  325. package/dist/translations/ru/web.json +2 -1
  326. package/dist/translations/uk/cli.json +82 -0
  327. package/dist/translations/uk/web.json +2 -1
  328. package/dist/tsconfig.build.tsbuildinfo +1 -1
  329. package/package.json +1 -1
  330. package/web/.next/BUILD_ID +1 -1
  331. package/web/.next/app-path-routes-manifest.json +1 -8
  332. package/web/.next/build-manifest.json +2 -2
  333. package/web/.next/fallback-build-manifest.json +2 -2
  334. package/web/.next/prerender-manifest.json +3 -3
  335. package/web/.next/required-server-files.js +1 -1
  336. package/web/.next/required-server-files.json +1 -1
  337. package/web/.next/routes-manifest.json +6 -58
  338. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +32 -32
  339. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +3 -3
  340. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  341. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  342. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +30 -30
  343. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js +3 -3
  344. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  345. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  346. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +33 -33
  347. package/web/.next/server/app/(dashboard)/@drawer/create/page.js +3 -3
  348. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  349. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  350. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +41 -41
  351. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +4 -4
  352. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  353. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  354. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +41 -41
  355. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +4 -4
  356. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  357. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  358. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +31 -31
  359. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js +3 -3
  360. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  361. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  362. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +31 -31
  363. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +3 -3
  364. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  365. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  366. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +30 -30
  367. package/web/.next/server/app/(dashboard)/chat/page.js +3 -3
  368. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  369. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  370. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +33 -33
  371. package/web/.next/server/app/(dashboard)/create/page.js +3 -3
  372. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  373. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  374. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +41 -41
  375. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +4 -4
  376. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  377. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  378. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +41 -41
  379. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +4 -4
  380. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  381. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  382. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +30 -30
  383. package/web/.next/server/app/(dashboard)/page.js +3 -3
  384. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  385. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  386. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +31 -31
  387. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js +3 -3
  388. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  389. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  390. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +31 -31
  391. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +3 -3
  392. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  393. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  394. package/web/.next/server/app/_global-error/page.js +1 -1
  395. package/web/.next/server/app/_global-error/page.js.nft.json +1 -1
  396. package/web/.next/server/app/_global-error.html +2 -2
  397. package/web/.next/server/app/_global-error.rsc +1 -1
  398. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  399. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  400. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  401. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  402. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  403. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +7 -7
  404. package/web/.next/server/app/_not-found/page.js +2 -2
  405. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  406. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  407. package/web/.next/server/app/api/agent-events/route.js +2 -1
  408. package/web/.next/server/app/api/agent-events/route.js.nft.json +1 -1
  409. package/web/.next/server/app/api/applications/[id]/route.js +1 -1
  410. package/web/.next/server/app/api/applications/[id]/route.js.nft.json +1 -1
  411. package/web/.next/server/app/api/attachments/preview/route.js +1 -1
  412. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  413. package/web/.next/server/app/api/attachments/upload-from-path/route.js +1 -1
  414. package/web/.next/server/app/api/attachments/upload-from-path/route.js.nft.json +1 -1
  415. package/web/.next/server/app/api/evidence/route.js +1 -1
  416. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  417. package/web/.next/server/app/api/feature-logs/route.js +1 -1
  418. package/web/.next/server/app/api/feature-logs/route.js.nft.json +1 -1
  419. package/web/.next/server/app/api/graph-data/route.js +2 -2
  420. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  421. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js +1 -1
  422. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
  423. package/web/.next/server/app/application/[id]/page/server-reference-manifest.json +40 -70
  424. package/web/.next/server/app/application/[id]/page.js +3 -3
  425. package/web/.next/server/app/application/[id]/page.js.nft.json +1 -1
  426. package/web/.next/server/app/application/[id]/page_client-reference-manifest.js +1 -1
  427. package/web/.next/server/app/applications/page/server-reference-manifest.json +15 -15
  428. package/web/.next/server/app/applications/page.js +3 -3
  429. package/web/.next/server/app/applications/page.js.nft.json +1 -1
  430. package/web/.next/server/app/applications/page_client-reference-manifest.js +1 -1
  431. package/web/.next/server/app/features/page/server-reference-manifest.json +7 -7
  432. package/web/.next/server/app/features/page.js +2 -2
  433. package/web/.next/server/app/features/page.js.nft.json +1 -1
  434. package/web/.next/server/app/features/page_client-reference-manifest.js +1 -1
  435. package/web/.next/server/app/plugins/page/app-paths-manifest.json +3 -0
  436. package/web/.next/server/app/plugins/page/build-manifest.json +18 -0
  437. package/web/.next/server/app/plugins/page/next-font-manifest.json +6 -0
  438. package/web/.next/server/app/plugins/page/react-loadable-manifest.json +1 -0
  439. package/web/.next/server/app/plugins/page/server-reference-manifest.json +170 -0
  440. package/web/.next/server/app/plugins/page.js +19 -0
  441. package/web/.next/server/app/plugins/page.js.nft.json +1 -0
  442. package/web/.next/server/app/plugins/page_client-reference-manifest.js +2 -0
  443. package/web/.next/server/app/settings/page/server-reference-manifest.json +10 -10
  444. package/web/.next/server/app/settings/page.js +3 -3
  445. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  446. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  447. package/web/.next/server/app/skills/page/server-reference-manifest.json +15 -15
  448. package/web/.next/server/app/skills/page.js +3 -3
  449. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  450. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  451. package/web/.next/server/app/tools/page/server-reference-manifest.json +13 -13
  452. package/web/.next/server/app/tools/page.js +3 -3
  453. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  454. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  455. package/web/.next/server/app/version/page/server-reference-manifest.json +7 -7
  456. package/web/.next/server/app/version/page.js +2 -2
  457. package/web/.next/server/app/version/page.js.nft.json +1 -1
  458. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  459. package/web/.next/server/app-paths-manifest.json +1 -8
  460. package/web/.next/server/chunks/{[root-of-the-server]__582ebd78._.js → [root-of-the-server]__0702fed9._.js} +2 -2
  461. package/web/.next/server/chunks/[root-of-the-server]__10e976f3._.js +1 -1
  462. package/web/.next/server/chunks/[root-of-the-server]__3f7e7be1._.js +2 -2
  463. package/web/.next/server/chunks/[root-of-the-server]__3f7e7be1._.js.map +1 -1
  464. package/web/.next/server/chunks/[root-of-the-server]__7a2ddaea._.js +3 -0
  465. package/web/.next/server/chunks/[root-of-the-server]__7a2ddaea._.js.map +1 -0
  466. package/web/.next/server/chunks/[root-of-the-server]__84fede21._.js +3 -0
  467. package/web/.next/server/chunks/[root-of-the-server]__84fede21._.js.map +1 -0
  468. package/web/.next/server/chunks/{[root-of-the-server]__76a92098._.js → [root-of-the-server]__88c71186._.js} +2 -2
  469. package/web/.next/server/chunks/{[root-of-the-server]__7de24eaf._.js → [root-of-the-server]__8b6abaa3._.js} +2 -2
  470. package/web/.next/server/chunks/[root-of-the-server]__aabea727._.js +3 -0
  471. package/web/.next/server/chunks/[root-of-the-server]__aabea727._.js.map +1 -0
  472. package/web/.next/server/chunks/{[root-of-the-server]__6af3863d._.js → [root-of-the-server]__cfba7146._.js} +2 -2
  473. package/web/.next/server/chunks/{[root-of-the-server]__6af3863d._.js.map → [root-of-the-server]__cfba7146._.js.map} +1 -1
  474. package/web/.next/server/chunks/{[root-of-the-server]__1133b25d._.js → [root-of-the-server]__dbb420e4._.js} +2 -2
  475. package/web/.next/server/chunks/d9f3b_next_dist_esm_build_templates_app-route_4faf694b.js +12 -0
  476. package/web/.next/server/chunks/d9f3b_next_dist_esm_build_templates_app-route_4faf694b.js.map +1 -0
  477. package/web/.next/server/chunks/d9f3b_next_dist_esm_build_templates_app-route_fc401c5d.js +1 -1
  478. package/web/.next/server/chunks/d9f3b_next_dist_esm_build_templates_app-route_fc401c5d.js.map +1 -1
  479. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4f9eef62.js +1 -1
  480. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4f9eef62.js.map +1 -1
  481. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_chat_page_actions_ffa16a22.js +1 -1
  482. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_chat_page_actions_ffa16a22.js.map +1 -1
  483. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_chat_page_actions_a1a998f9.js +1 -1
  484. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_chat_page_actions_a1a998f9.js.map +1 -1
  485. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  486. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  487. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +2 -2
  488. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  489. package/web/.next/server/chunks/ssr/744ca_web_components_features_applications_applications-page-client_tsx_d0db9938._.js +1 -1
  490. package/web/.next/server/chunks/ssr/744ca_web_components_features_applications_applications-page-client_tsx_d0db9938._.js.map +1 -1
  491. package/web/.next/server/chunks/ssr/[root-of-the-server]__269765de._.js +4 -0
  492. package/web/.next/server/chunks/ssr/[root-of-the-server]__269765de._.js.map +1 -0
  493. package/web/.next/server/chunks/ssr/{[root-of-the-server]__ec85e47f._.js → [root-of-the-server]__288ffaa6._.js} +2 -2
  494. package/web/.next/server/chunks/ssr/{[root-of-the-server]__ec85e47f._.js.map → [root-of-the-server]__288ffaa6._.js.map} +1 -1
  495. package/web/.next/server/chunks/ssr/[root-of-the-server]__4101a4a8._.js +1 -1
  496. package/web/.next/server/chunks/ssr/[root-of-the-server]__4101a4a8._.js.map +1 -1
  497. package/web/.next/server/chunks/ssr/{[root-of-the-server]__7ea16f3a._.js → [root-of-the-server]__46dd2baf._.js} +2 -2
  498. package/web/.next/server/chunks/ssr/{[root-of-the-server]__7ea16f3a._.js.map → [root-of-the-server]__46dd2baf._.js.map} +1 -1
  499. package/web/.next/server/chunks/ssr/[root-of-the-server]__538580df._.js +1 -1
  500. package/web/.next/server/chunks/ssr/[root-of-the-server]__538580df._.js.map +1 -1
  501. package/web/.next/server/chunks/ssr/[root-of-the-server]__58043de2._.js +3 -0
  502. package/web/.next/server/chunks/ssr/[root-of-the-server]__58043de2._.js.map +1 -0
  503. package/web/.next/server/chunks/ssr/{[root-of-the-server]__5193e3ce._.js → [root-of-the-server]__5c5de261._.js} +2 -2
  504. package/web/.next/server/chunks/ssr/{[root-of-the-server]__5193e3ce._.js.map → [root-of-the-server]__5c5de261._.js.map} +1 -1
  505. package/web/.next/server/chunks/ssr/[root-of-the-server]__638955bc._.js +1 -1
  506. package/web/.next/server/chunks/ssr/[root-of-the-server]__87d5ff6e._.js +1 -1
  507. package/web/.next/server/chunks/ssr/[root-of-the-server]__87d5ff6e._.js.map +1 -1
  508. package/web/.next/server/chunks/ssr/[root-of-the-server]__9b0e14ee._.js +3 -0
  509. package/web/.next/server/chunks/ssr/[root-of-the-server]__9b0e14ee._.js.map +1 -0
  510. package/web/.next/server/chunks/ssr/{[root-of-the-server]__93be3301._.js → [root-of-the-server]__ac9ab3c5._.js} +2 -2
  511. package/web/.next/server/chunks/ssr/{[root-of-the-server]__93be3301._.js.map → [root-of-the-server]__ac9ab3c5._.js.map} +1 -1
  512. package/web/.next/server/chunks/ssr/[root-of-the-server]__c3d233f3._.js +1 -1
  513. package/web/.next/server/chunks/ssr/[root-of-the-server]__c3d233f3._.js.map +1 -1
  514. package/web/.next/server/chunks/ssr/[root-of-the-server]__c6dba2b8._.js +1 -1
  515. package/web/.next/server/chunks/ssr/[root-of-the-server]__c6dba2b8._.js.map +1 -1
  516. package/web/.next/server/chunks/ssr/[root-of-the-server]__de3991d8._.js +3 -0
  517. package/web/.next/server/chunks/ssr/[root-of-the-server]__de3991d8._.js.map +1 -0
  518. package/web/.next/server/chunks/ssr/[root-of-the-server]__e4fac430._.js +3 -0
  519. package/web/.next/server/chunks/ssr/[root-of-the-server]__e4fac430._.js.map +1 -0
  520. package/web/.next/server/chunks/ssr/[root-of-the-server]__eacd32e9._.js +4 -0
  521. package/web/.next/server/chunks/ssr/[root-of-the-server]__eacd32e9._.js.map +1 -0
  522. package/web/.next/server/chunks/ssr/{[root-of-the-server]__494cf0fb._.js → [root-of-the-server]__ef0b8905._.js} +3 -3
  523. package/web/.next/server/chunks/ssr/[root-of-the-server]__ef0b8905._.js.map +1 -0
  524. package/web/.next/server/chunks/ssr/{[root-of-the-server]__7198dce9._.js → [root-of-the-server]__f94e4165._.js} +2 -2
  525. package/web/.next/server/chunks/ssr/{[root-of-the-server]__7198dce9._.js.map → [root-of-the-server]__f94e4165._.js.map} +1 -1
  526. package/web/.next/server/chunks/ssr/{[root-of-the-server]__149d89d9._.js → [root-of-the-server]__ff5a5243._.js} +2 -2
  527. package/web/.next/server/chunks/ssr/{[root-of-the-server]__149d89d9._.js.map → [root-of-the-server]__ff5a5243._.js.map} +1 -1
  528. package/web/.next/server/chunks/ssr/_0f41c049._.js +3 -0
  529. package/web/.next/server/chunks/ssr/_0f41c049._.js.map +1 -0
  530. package/web/.next/server/chunks/ssr/_33a243dd._.js +1 -1
  531. package/web/.next/server/chunks/ssr/_33a243dd._.js.map +1 -1
  532. package/web/.next/server/chunks/ssr/{_5bf2415e._.js → _34113cf8._.js} +2 -2
  533. package/web/.next/server/chunks/ssr/_34113cf8._.js.map +1 -0
  534. package/web/.next/server/chunks/ssr/_519d77a9._.js +3 -0
  535. package/web/.next/server/chunks/ssr/_519d77a9._.js.map +1 -0
  536. package/web/.next/server/chunks/ssr/_563be831._.js +3 -0
  537. package/web/.next/server/chunks/ssr/_563be831._.js.map +1 -0
  538. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  539. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  540. package/web/.next/server/chunks/ssr/_57643324._.js +3 -0
  541. package/web/.next/server/chunks/ssr/_57643324._.js.map +1 -0
  542. package/web/.next/server/chunks/ssr/_6a252f90._.js +3 -0
  543. package/web/.next/server/chunks/ssr/_6a252f90._.js.map +1 -0
  544. package/web/.next/server/chunks/ssr/_6b254164._.js +1 -1
  545. package/web/.next/server/chunks/ssr/_6b254164._.js.map +1 -1
  546. package/web/.next/server/chunks/ssr/_6cc2c4f7._.js +3 -0
  547. package/web/.next/server/chunks/ssr/_6cc2c4f7._.js.map +1 -0
  548. package/web/.next/server/chunks/ssr/_6cc4c05b._.js +3 -0
  549. package/web/.next/server/chunks/ssr/_6cc4c05b._.js.map +1 -0
  550. package/web/.next/server/chunks/ssr/_6fd324a3._.js +3 -0
  551. package/web/.next/server/chunks/ssr/_6fd324a3._.js.map +1 -0
  552. package/web/.next/server/chunks/ssr/{_82baa7c1._.js → _828a0b9c._.js} +2 -2
  553. package/web/.next/server/chunks/ssr/{_82baa7c1._.js.map → _828a0b9c._.js.map} +1 -1
  554. package/web/.next/server/chunks/ssr/_8757ce67._.js +4 -0
  555. package/web/.next/server/chunks/ssr/_8757ce67._.js.map +1 -0
  556. package/web/.next/server/chunks/ssr/_8e101e0b._.js +12 -12
  557. package/web/.next/server/chunks/ssr/_8e101e0b._.js.map +1 -1
  558. package/web/.next/server/chunks/ssr/_93002ccf._.js +3 -0
  559. package/web/.next/server/chunks/ssr/_93002ccf._.js.map +1 -0
  560. package/web/.next/server/chunks/ssr/_9f191a54._.js +3 -0
  561. package/web/.next/server/chunks/ssr/_9f191a54._.js.map +1 -0
  562. package/web/.next/server/chunks/ssr/_d6ba4d64._.js +3 -0
  563. package/web/.next/server/chunks/ssr/_d6ba4d64._.js.map +1 -0
  564. package/web/.next/server/chunks/ssr/_e225a49c._.js +3 -0
  565. package/web/.next/server/chunks/ssr/_e225a49c._.js.map +1 -0
  566. package/web/.next/server/chunks/ssr/_e28c6144._.js +3 -0
  567. package/web/.next/server/chunks/ssr/_e28c6144._.js.map +1 -0
  568. package/web/.next/server/chunks/ssr/_e65abbd1._.js +3 -0
  569. package/web/.next/server/chunks/ssr/_e65abbd1._.js.map +1 -0
  570. package/web/.next/server/chunks/ssr/_ebd74417._.js +9 -0
  571. package/web/.next/server/chunks/ssr/_ebd74417._.js.map +1 -0
  572. package/web/.next/server/chunks/ssr/{_750b8cfe._.js → _f39276bf._.js} +2 -2
  573. package/web/.next/server/chunks/ssr/{_750b8cfe._.js.map → _f39276bf._.js.map} +1 -1
  574. package/web/.next/server/chunks/ssr/_f86fc1bf._.js +1 -1
  575. package/web/.next/server/chunks/ssr/_f86fc1bf._.js.map +1 -1
  576. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  577. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  578. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
  579. package/web/.next/server/chunks/ssr/node_modules__pnpm_1300ae39._.js +3 -0
  580. package/web/.next/server/chunks/ssr/node_modules__pnpm_1300ae39._.js.map +1 -0
  581. package/web/.next/server/chunks/ssr/node_modules__pnpm_28388798._.js +3 -0
  582. package/web/.next/server/chunks/ssr/node_modules__pnpm_28388798._.js.map +1 -0
  583. package/web/.next/server/chunks/ssr/{_72cc0c05._.js → node_modules__pnpm_632deb2b._.js} +2 -2
  584. package/web/.next/server/chunks/ssr/node_modules__pnpm_632deb2b._.js.map +1 -0
  585. package/web/.next/server/chunks/ssr/src_presentation_web_47181610._.js +1 -1
  586. package/web/.next/server/chunks/ssr/src_presentation_web_47181610._.js.map +1 -1
  587. package/web/.next/server/chunks/ssr/src_presentation_web_5d3f4199._.js +1 -1
  588. package/web/.next/server/chunks/ssr/src_presentation_web_5d3f4199._.js.map +1 -1
  589. package/web/.next/server/chunks/ssr/src_presentation_web_6159fef8._.js +1 -1
  590. package/web/.next/server/chunks/ssr/src_presentation_web_6159fef8._.js.map +1 -1
  591. package/web/.next/server/chunks/ssr/src_presentation_web_61d96ba8._.js +1 -1
  592. package/web/.next/server/chunks/ssr/src_presentation_web_61d96ba8._.js.map +1 -1
  593. package/web/.next/server/chunks/ssr/src_presentation_web_6994959a._.js +1 -1
  594. package/web/.next/server/chunks/ssr/src_presentation_web_6994959a._.js.map +1 -1
  595. package/web/.next/server/chunks/ssr/src_presentation_web_77dadf68._.js +3 -3
  596. package/web/.next/server/chunks/ssr/src_presentation_web_77dadf68._.js.map +1 -1
  597. package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js +1 -1
  598. package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js.map +1 -1
  599. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_c3f6f57e.js +1 -1
  600. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_c3f6f57e.js.map +1 -1
  601. package/web/.next/server/chunks/ssr/src_presentation_web_ad42cc73._.js +1 -1
  602. package/web/.next/server/chunks/ssr/src_presentation_web_ad42cc73._.js.map +1 -1
  603. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_8514dfcd._.js +3 -3
  604. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_8514dfcd._.js.map +1 -1
  605. package/web/.next/server/chunks/ssr/src_presentation_web_b95ed206._.js +1 -1
  606. package/web/.next/server/chunks/ssr/src_presentation_web_b95ed206._.js.map +1 -1
  607. package/web/.next/server/chunks/ssr/src_presentation_web_bade80bd._.js +1 -1
  608. package/web/.next/server/chunks/ssr/src_presentation_web_bade80bd._.js.map +1 -1
  609. package/web/.next/server/chunks/ssr/src_presentation_web_c543cf3e._.js +1 -1
  610. package/web/.next/server/chunks/ssr/src_presentation_web_c543cf3e._.js.map +1 -1
  611. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +1 -1
  612. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -1
  613. package/web/.next/server/chunks/ssr/src_presentation_web_components_common_base-drawer_base-drawer_tsx_97dfbbc8._.js +1 -1
  614. package/web/.next/server/chunks/ssr/src_presentation_web_components_common_base-drawer_base-drawer_tsx_97dfbbc8._.js.map +1 -1
  615. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js +1 -1
  616. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js.map +1 -1
  617. package/web/.next/server/chunks/ssr/{_bb8735f7._.js → src_presentation_web_components_ui_dropdown-menu_tsx_229332e3._.js} +2 -2
  618. package/web/.next/server/chunks/ssr/src_presentation_web_components_ui_dropdown-menu_tsx_229332e3._.js.map +1 -0
  619. package/web/.next/server/chunks/ssr/translations_1562ae1a._.js +1 -1
  620. package/web/.next/server/chunks/ssr/translations_1562ae1a._.js.map +1 -1
  621. package/web/.next/server/pages/500.html +2 -2
  622. package/web/.next/server/server-reference-manifest.js +1 -1
  623. package/web/.next/server/server-reference-manifest.json +165 -86
  624. package/web/.next/static/chunks/{113f38481fc14902.js → 08fd591b02975483.js} +12 -12
  625. package/web/.next/static/chunks/{74d3f880029b266f.js → 0b974caf7e3c6fea.js} +1 -1
  626. package/web/.next/static/chunks/116e8d2a69619e48.js +1 -0
  627. package/web/.next/static/chunks/1b72915af68bd327.js +1 -0
  628. package/web/.next/static/chunks/{e0f33f0d6cb8cf21.js → 1f2f77dd2f63f257.js} +1 -1
  629. package/web/.next/static/chunks/3031618bf02ecd26.js +1 -0
  630. package/web/.next/static/chunks/{d770f7a879b2f43a.js → 3caa2489e09df522.js} +1 -1
  631. package/web/.next/static/chunks/463c8dd86ed296c9.js +1 -0
  632. package/web/.next/static/chunks/{6bac882ad18c881c.js → 534c414bd5e096af.js} +2 -2
  633. package/web/.next/static/chunks/59e96a965c1cc25b.js +7 -0
  634. package/web/.next/static/chunks/5a2f5a3c29c6c3dd.js +1 -0
  635. package/web/.next/static/chunks/616760ae36cf397f.js +1 -0
  636. package/web/.next/static/chunks/{6512133101a3eb85.js → 6aa8cfb9a0673778.js} +3 -3
  637. package/web/.next/static/chunks/772f87225f881091.css +1 -0
  638. package/web/.next/static/chunks/854d1bb6e05cadeb.js +1 -0
  639. package/web/.next/static/chunks/86ce4c6dcb228907.js +1 -0
  640. package/web/.next/static/chunks/86e9d633379e74e8.js +5 -0
  641. package/web/.next/static/chunks/88aa4f96ec9e8349.js +1 -0
  642. package/web/.next/static/chunks/{7f25b508e717b00c.js → a3ea2afcbac5ac67.js} +1 -1
  643. package/web/.next/static/chunks/{270528435203323f.js → b58faaa9802033ff.js} +1 -1
  644. package/web/.next/static/chunks/b9102b4bbe2f64f9.js +1 -0
  645. package/web/.next/static/chunks/b944b65ad181b84d.js +1 -0
  646. package/web/.next/static/chunks/c77489661f071f47.js +1 -0
  647. package/web/.next/static/chunks/cadb8f07b3c1e864.js +1 -0
  648. package/web/.next/static/chunks/d3224741c62e8767.js +1 -0
  649. package/web/.next/static/chunks/d51b987a73d58809.js +1 -0
  650. package/web/.next/static/chunks/e99459f76df95a70.js +1 -0
  651. package/web/.next/static/chunks/{9c4c03206c46abd2.js → f318341087d1415a.js} +1 -1
  652. package/web/.next/static/chunks/f76f1155e5d0d296.js +1 -0
  653. package/web/.next/static/chunks/fc5dbf92b25edf22.js +1 -0
  654. package/apis/json-schema/CloudDeploymentProvider.yaml +0 -10
  655. package/apis/json-schema/CloudDeploymentStatus.yaml +0 -11
  656. package/apis/json-schema/InteractiveSessionEventType.yaml +0 -9
  657. package/dist/packages/core/src/application/ports/output/agents/agent-session-repository-registry.interface.d.ts +0 -23
  658. package/dist/packages/core/src/application/ports/output/agents/agent-session-repository-registry.interface.d.ts.map +0 -1
  659. package/dist/packages/core/src/application/ports/output/agents/agent-session-repository-registry.interface.js +0 -12
  660. package/dist/packages/core/src/application/ports/output/repositories/cloud-provider-tokens.repository.interface.d.ts +0 -29
  661. package/dist/packages/core/src/application/ports/output/repositories/cloud-provider-tokens.repository.interface.d.ts.map +0 -1
  662. package/dist/packages/core/src/application/ports/output/repositories/cloud-provider-tokens.repository.interface.js +0 -9
  663. package/dist/packages/core/src/application/ports/output/services/attachment-storage.interface.d.ts +0 -31
  664. package/dist/packages/core/src/application/ports/output/services/attachment-storage.interface.d.ts.map +0 -1
  665. package/dist/packages/core/src/application/ports/output/services/attachment-storage.interface.js +0 -9
  666. package/dist/packages/core/src/application/ports/output/services/cloud-deployment-event-bus.interface.d.ts +0 -23
  667. package/dist/packages/core/src/application/ports/output/services/cloud-deployment-event-bus.interface.d.ts.map +0 -1
  668. package/dist/packages/core/src/application/ports/output/services/cloud-deployment-event-bus.interface.js +0 -8
  669. package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider-registry.interface.d.ts +0 -30
  670. package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider-registry.interface.d.ts.map +0 -1
  671. package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider-registry.interface.js +0 -9
  672. package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider.interface.d.ts +0 -54
  673. package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider.interface.d.ts.map +0 -1
  674. package/dist/packages/core/src/application/ports/output/services/cloud-deployment-provider.interface.js +0 -10
  675. package/dist/packages/core/src/application/ports/output/services/conflict-resolution.interface.d.ts +0 -36
  676. package/dist/packages/core/src/application/ports/output/services/conflict-resolution.interface.d.ts.map +0 -1
  677. package/dist/packages/core/src/application/ports/output/services/conflict-resolution.interface.js +0 -8
  678. package/dist/packages/core/src/application/ports/output/services/git-commit.service.interface.d.ts +0 -47
  679. package/dist/packages/core/src/application/ports/output/services/git-commit.service.interface.d.ts.map +0 -1
  680. package/dist/packages/core/src/application/ports/output/services/git-commit.service.interface.js +0 -19
  681. package/dist/packages/core/src/application/ports/output/services/git-remote.service.interface.d.ts +0 -41
  682. package/dist/packages/core/src/application/ports/output/services/git-remote.service.interface.d.ts.map +0 -1
  683. package/dist/packages/core/src/application/ports/output/services/git-remote.service.interface.js +0 -18
  684. package/dist/packages/core/src/application/ports/output/services/logger.interface.d.ts +0 -14
  685. package/dist/packages/core/src/application/ports/output/services/logger.interface.d.ts.map +0 -1
  686. package/dist/packages/core/src/application/ports/output/services/logger.interface.js +0 -8
  687. package/dist/packages/core/src/application/ports/output/services/node-helpers.interface.d.ts +0 -28
  688. package/dist/packages/core/src/application/ports/output/services/node-helpers.interface.d.ts.map +0 -1
  689. package/dist/packages/core/src/application/ports/output/services/node-helpers.interface.js +0 -8
  690. package/dist/packages/core/src/application/ports/output/services/phase-timing-context.interface.d.ts +0 -25
  691. package/dist/packages/core/src/application/ports/output/services/phase-timing-context.interface.d.ts.map +0 -1
  692. package/dist/packages/core/src/application/ports/output/services/phase-timing-context.interface.js +0 -9
  693. package/dist/packages/core/src/application/ports/output/services/process-liveness.interface.d.ts +0 -20
  694. package/dist/packages/core/src/application/ports/output/services/process-liveness.interface.d.ts.map +0 -1
  695. package/dist/packages/core/src/application/ports/output/services/process-liveness.interface.js +0 -12
  696. package/dist/packages/core/src/application/ports/output/services/spec-artifact-parser.interface.d.ts +0 -37
  697. package/dist/packages/core/src/application/ports/output/services/spec-artifact-parser.interface.d.ts.map +0 -1
  698. package/dist/packages/core/src/application/ports/output/services/spec-artifact-parser.interface.js +0 -14
  699. package/dist/packages/core/src/application/ports/output/services/tool-metadata-provider.interface.d.ts +0 -85
  700. package/dist/packages/core/src/application/ports/output/services/tool-metadata-provider.interface.d.ts.map +0 -1
  701. package/dist/packages/core/src/application/ports/output/services/tool-metadata-provider.interface.js +0 -9
  702. package/dist/packages/core/src/application/ports/output/services/worktree-path-provider.interface.d.ts +0 -22
  703. package/dist/packages/core/src/application/ports/output/services/worktree-path-provider.interface.d.ts.map +0 -1
  704. package/dist/packages/core/src/application/ports/output/services/worktree-path-provider.interface.js +0 -9
  705. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-feature-deltas.d.ts +0 -19
  706. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-feature-deltas.d.ts.map +0 -1
  707. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-feature-deltas.js +0 -74
  708. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-phase-completion-deltas.d.ts +0 -17
  709. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-phase-completion-deltas.d.ts.map +0 -1
  710. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-phase-completion-deltas.js +0 -31
  711. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-pr-deltas.d.ts +0 -18
  712. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-pr-deltas.d.ts.map +0 -1
  713. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-pr-deltas.js +0 -43
  714. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-session-deltas.d.ts +0 -20
  715. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-session-deltas.d.ts.map +0 -1
  716. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-session-deltas.js +0 -51
  717. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-status-deltas.d.ts +0 -22
  718. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-status-deltas.d.ts.map +0 -1
  719. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/compute-status-deltas.js +0 -59
  720. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/stream-agent-events.types.d.ts +0 -73
  721. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/stream-agent-events.types.d.ts.map +0 -1
  722. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events/stream-agent-events.types.js +0 -63
  723. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events.use-case.d.ts +0 -79
  724. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events.use-case.d.ts.map +0 -1
  725. package/dist/packages/core/src/application/use-cases/agents/stream-agent-events.use-case.js +0 -291
  726. package/dist/packages/core/src/application/use-cases/applications/application-creation.workflow.d.ts.map +0 -1
  727. package/dist/packages/core/src/application/use-cases/applications/commit-and-push-application-changes.use-case.d.ts +0 -22
  728. package/dist/packages/core/src/application/use-cases/applications/commit-and-push-application-changes.use-case.d.ts.map +0 -1
  729. package/dist/packages/core/src/application/use-cases/applications/commit-and-push-application-changes.use-case.js +0 -63
  730. package/dist/packages/core/src/application/use-cases/applications/commit-application-changes.use-case.d.ts +0 -21
  731. package/dist/packages/core/src/application/use-cases/applications/commit-application-changes.use-case.d.ts.map +0 -1
  732. package/dist/packages/core/src/application/use-cases/applications/commit-application-changes.use-case.js +0 -61
  733. package/dist/packages/core/src/application/use-cases/cloud-deploy/connect-cloud-provider.use-case.d.ts +0 -14
  734. package/dist/packages/core/src/application/use-cases/cloud-deploy/connect-cloud-provider.use-case.d.ts.map +0 -1
  735. package/dist/packages/core/src/application/use-cases/cloud-deploy/connect-cloud-provider.use-case.js +0 -38
  736. package/dist/packages/core/src/application/use-cases/cloud-deploy/create-git-remote.use-case.d.ts +0 -12
  737. package/dist/packages/core/src/application/use-cases/cloud-deploy/create-git-remote.use-case.d.ts.map +0 -1
  738. package/dist/packages/core/src/application/use-cases/cloud-deploy/create-git-remote.use-case.js +0 -41
  739. package/dist/packages/core/src/application/use-cases/cloud-deploy/ensure-gh-authenticated.use-case.d.ts +0 -9
  740. package/dist/packages/core/src/application/use-cases/cloud-deploy/ensure-gh-authenticated.use-case.d.ts.map +0 -1
  741. package/dist/packages/core/src/application/use-cases/cloud-deploy/get-cloud-deployment-status.use-case.d.ts +0 -17
  742. package/dist/packages/core/src/application/use-cases/cloud-deploy/get-cloud-deployment-status.use-case.d.ts.map +0 -1
  743. package/dist/packages/core/src/application/use-cases/cloud-deploy/get-cloud-deployment-status.use-case.js +0 -44
  744. package/dist/packages/core/src/application/use-cases/cloud-deploy/initiate-cloud-deployment.use-case.d.ts +0 -27
  745. package/dist/packages/core/src/application/use-cases/cloud-deploy/initiate-cloud-deployment.use-case.d.ts.map +0 -1
  746. package/dist/packages/core/src/application/use-cases/cloud-deploy/initiate-cloud-deployment.use-case.js +0 -120
  747. package/dist/packages/core/src/application/use-cases/cloud-deploy/list-cloud-providers.use-case.d.ts +0 -16
  748. package/dist/packages/core/src/application/use-cases/cloud-deploy/list-cloud-providers.use-case.d.ts.map +0 -1
  749. package/dist/packages/core/src/application/use-cases/cloud-deploy/list-cloud-providers.use-case.js +0 -38
  750. package/dist/packages/core/src/application/use-cases/cloud-deploy/select-cloud-provider.use-case.d.ts +0 -12
  751. package/dist/packages/core/src/application/use-cases/cloud-deploy/select-cloud-provider.use-case.d.ts.map +0 -1
  752. package/dist/packages/core/src/application/use-cases/deployments/start-application-deployment.use-case.d.ts +0 -48
  753. package/dist/packages/core/src/application/use-cases/deployments/start-application-deployment.use-case.d.ts.map +0 -1
  754. package/dist/packages/core/src/application/use-cases/deployments/start-application-deployment.use-case.js +0 -99
  755. package/dist/packages/core/src/domain/errors/application-not-found.error.d.ts +0 -12
  756. package/dist/packages/core/src/domain/errors/application-not-found.error.d.ts.map +0 -1
  757. package/dist/packages/core/src/domain/errors/application-not-found.error.js +0 -16
  758. package/dist/packages/core/src/domain/errors/application-not-ready.error.d.ts +0 -12
  759. package/dist/packages/core/src/domain/errors/application-not-ready.error.d.ts.map +0 -1
  760. package/dist/packages/core/src/domain/errors/application-not-ready.error.js +0 -16
  761. package/dist/packages/core/src/domain/errors/application-repository-not-on-disk.error.d.ts +0 -15
  762. package/dist/packages/core/src/domain/errors/application-repository-not-on-disk.error.d.ts.map +0 -1
  763. package/dist/packages/core/src/domain/errors/application-repository-not-on-disk.error.js +0 -20
  764. package/dist/packages/core/src/domain/errors/build-output-not-found.error.d.ts +0 -13
  765. package/dist/packages/core/src/domain/errors/build-output-not-found.error.d.ts.map +0 -1
  766. package/dist/packages/core/src/domain/errors/build-output-not-found.error.js +0 -17
  767. package/dist/packages/core/src/domain/errors/cannot-deploy-self.error.d.ts +0 -14
  768. package/dist/packages/core/src/domain/errors/cannot-deploy-self.error.d.ts.map +0 -1
  769. package/dist/packages/core/src/domain/errors/cannot-deploy-self.error.js +0 -18
  770. package/dist/packages/core/src/domain/errors/cloud-provider-not-connected.error.d.ts +0 -12
  771. package/dist/packages/core/src/domain/errors/cloud-provider-not-connected.error.d.ts.map +0 -1
  772. package/dist/packages/core/src/domain/errors/cloud-provider-not-connected.error.js +0 -16
  773. package/dist/packages/core/src/domain/errors/no-provider-selected.error.d.ts +0 -13
  774. package/dist/packages/core/src/domain/errors/no-provider-selected.error.d.ts.map +0 -1
  775. package/dist/packages/core/src/domain/errors/no-provider-selected.error.js +0 -17
  776. package/dist/packages/core/src/domain/errors/provider-not-implemented.error.d.ts +0 -12
  777. package/dist/packages/core/src/domain/errors/provider-not-implemented.error.d.ts.map +0 -1
  778. package/dist/packages/core/src/domain/errors/provider-not-implemented.error.js +0 -16
  779. package/dist/packages/core/src/domain/shared/feature-id.d.ts +0 -25
  780. package/dist/packages/core/src/domain/shared/feature-id.d.ts.map +0 -1
  781. package/dist/packages/core/src/domain/shared/feature-id.js +0 -33
  782. package/dist/packages/core/src/domain/shared/normalize-path.d.ts +0 -21
  783. package/dist/packages/core/src/domain/shared/normalize-path.d.ts.map +0 -1
  784. package/dist/packages/core/src/domain/shared/normalize-path.js +0 -29
  785. package/dist/packages/core/src/domain/shared/sdlc-lifecycle-mapping.d.ts +0 -25
  786. package/dist/packages/core/src/domain/shared/sdlc-lifecycle-mapping.d.ts.map +0 -1
  787. package/dist/packages/core/src/domain/shared/sdlc-lifecycle-mapping.js +0 -40
  788. package/dist/packages/core/src/infrastructure/di/modules/register-agents.d.ts +0 -8
  789. package/dist/packages/core/src/infrastructure/di/modules/register-agents.d.ts.map +0 -1
  790. package/dist/packages/core/src/infrastructure/di/modules/register-agents.js +0 -100
  791. package/dist/packages/core/src/infrastructure/di/modules/register-cloud-deploy.d.ts +0 -9
  792. package/dist/packages/core/src/infrastructure/di/modules/register-cloud-deploy.d.ts.map +0 -1
  793. package/dist/packages/core/src/infrastructure/di/modules/register-cloud-deploy.js +0 -82
  794. package/dist/packages/core/src/infrastructure/di/modules/register-deployment.d.ts +0 -7
  795. package/dist/packages/core/src/infrastructure/di/modules/register-deployment.d.ts.map +0 -1
  796. package/dist/packages/core/src/infrastructure/di/modules/register-deployment.js +0 -38
  797. package/dist/packages/core/src/infrastructure/di/modules/register-interactive.d.ts +0 -10
  798. package/dist/packages/core/src/infrastructure/di/modules/register-interactive.d.ts.map +0 -1
  799. package/dist/packages/core/src/infrastructure/di/modules/register-interactive.js +0 -41
  800. package/dist/packages/core/src/infrastructure/di/modules/register-repositories.d.ts +0 -8
  801. package/dist/packages/core/src/infrastructure/di/modules/register-repositories.d.ts.map +0 -1
  802. package/dist/packages/core/src/infrastructure/di/modules/register-repositories.js +0 -70
  803. package/dist/packages/core/src/infrastructure/di/modules/register-services.d.ts +0 -10
  804. package/dist/packages/core/src/infrastructure/di/modules/register-services.d.ts.map +0 -1
  805. package/dist/packages/core/src/infrastructure/di/modules/register-services.js +0 -113
  806. package/dist/packages/core/src/infrastructure/di/modules/register-tools.d.ts +0 -7
  807. package/dist/packages/core/src/infrastructure/di/modules/register-tools.d.ts.map +0 -1
  808. package/dist/packages/core/src/infrastructure/di/modules/register-tools.js +0 -16
  809. package/dist/packages/core/src/infrastructure/di/modules/register-use-cases.d.ts +0 -12
  810. package/dist/packages/core/src/infrastructure/di/modules/register-use-cases.d.ts.map +0 -1
  811. package/dist/packages/core/src/infrastructure/di/modules/register-use-cases.js +0 -327
  812. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-add-cloud-deploy-columns-to-applications.d.ts +0 -5
  813. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-add-cloud-deploy-columns-to-applications.d.ts.map +0 -1
  814. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/060-add-cloud-deploy-columns-to-applications.js +0 -36
  815. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-create-cloud-provider-tokens-table.d.ts +0 -5
  816. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-create-cloud-provider-tokens-table.d.ts.map +0 -1
  817. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/061-create-cloud-provider-tokens-table.js +0 -20
  818. package/dist/packages/core/src/infrastructure/repositories/sqlite-cloud-provider-tokens.repository.d.ts +0 -20
  819. package/dist/packages/core/src/infrastructure/repositories/sqlite-cloud-provider-tokens.repository.d.ts.map +0 -1
  820. package/dist/packages/core/src/infrastructure/repositories/sqlite-cloud-provider-tokens.repository.js +0 -75
  821. package/dist/packages/core/src/infrastructure/services/agents/agent-session-repository.registry.d.ts +0 -30
  822. package/dist/packages/core/src/infrastructure/services/agents/agent-session-repository.registry.d.ts.map +0 -1
  823. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.adapter.d.ts +0 -14
  824. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.adapter.d.ts.map +0 -1
  825. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.adapter.js +0 -28
  826. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/phase-timing-context.adapter.d.ts +0 -14
  827. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/phase-timing-context.adapter.d.ts.map +0 -1
  828. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/phase-timing-context.adapter.js +0 -25
  829. package/dist/packages/core/src/infrastructure/services/cloud-deploy/aws-amplify.provider.stub.d.ts +0 -7
  830. package/dist/packages/core/src/infrastructure/services/cloud-deploy/aws-amplify.provider.stub.d.ts.map +0 -1
  831. package/dist/packages/core/src/infrastructure/services/cloud-deploy/aws-amplify.provider.stub.js +0 -17
  832. package/dist/packages/core/src/infrastructure/services/cloud-deploy/base-provider-stub.d.ts +0 -21
  833. package/dist/packages/core/src/infrastructure/services/cloud-deploy/base-provider-stub.d.ts.map +0 -1
  834. package/dist/packages/core/src/infrastructure/services/cloud-deploy/base-provider-stub.js +0 -22
  835. package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-errors.d.ts +0 -24
  836. package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-errors.d.ts.map +0 -1
  837. package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-errors.js +0 -25
  838. package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-provider.registry.d.ts +0 -19
  839. package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-provider.registry.d.ts.map +0 -1
  840. package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloud-deployment-provider.registry.js +0 -48
  841. package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloudflare-pages.provider.d.ts +0 -52
  842. package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloudflare-pages.provider.d.ts.map +0 -1
  843. package/dist/packages/core/src/infrastructure/services/cloud-deploy/cloudflare-pages.provider.js +0 -208
  844. package/dist/packages/core/src/infrastructure/services/cloud-deploy/gcp-cloud-run.provider.stub.d.ts +0 -7
  845. package/dist/packages/core/src/infrastructure/services/cloud-deploy/gcp-cloud-run.provider.stub.d.ts.map +0 -1
  846. package/dist/packages/core/src/infrastructure/services/cloud-deploy/gcp-cloud-run.provider.stub.js +0 -17
  847. package/dist/packages/core/src/infrastructure/services/cloud-deploy/netlify.provider.stub.d.ts +0 -7
  848. package/dist/packages/core/src/infrastructure/services/cloud-deploy/netlify.provider.stub.d.ts.map +0 -1
  849. package/dist/packages/core/src/infrastructure/services/cloud-deploy/netlify.provider.stub.js +0 -17
  850. package/dist/packages/core/src/infrastructure/services/cloud-deploy/vercel.provider.stub.d.ts +0 -7
  851. package/dist/packages/core/src/infrastructure/services/cloud-deploy/vercel.provider.stub.d.ts.map +0 -1
  852. package/dist/packages/core/src/infrastructure/services/cloud-deploy/vercel.provider.stub.js +0 -17
  853. package/dist/packages/core/src/infrastructure/services/crypto/local-secret-box.d.ts +0 -29
  854. package/dist/packages/core/src/infrastructure/services/crypto/local-secret-box.d.ts.map +0 -1
  855. package/dist/packages/core/src/infrastructure/services/crypto/local-secret-box.js +0 -48
  856. package/dist/packages/core/src/infrastructure/services/crypto/secret-key-file.d.ts +0 -23
  857. package/dist/packages/core/src/infrastructure/services/crypto/secret-key-file.d.ts.map +0 -1
  858. package/dist/packages/core/src/infrastructure/services/crypto/secret-key-file.js +0 -46
  859. package/dist/packages/core/src/infrastructure/services/events/in-memory-cloud-deployment-event-bus.d.ts +0 -14
  860. package/dist/packages/core/src/infrastructure/services/events/in-memory-cloud-deployment-event-bus.d.ts.map +0 -1
  861. package/dist/packages/core/src/infrastructure/services/events/in-memory-cloud-deployment-event-bus.js +0 -37
  862. package/dist/packages/core/src/infrastructure/services/git/git-commit.service.d.ts +0 -20
  863. package/dist/packages/core/src/infrastructure/services/git/git-commit.service.d.ts.map +0 -1
  864. package/dist/packages/core/src/infrastructure/services/git/git-commit.service.js +0 -99
  865. package/dist/packages/core/src/infrastructure/services/git/git-remote.service.d.ts +0 -23
  866. package/dist/packages/core/src/infrastructure/services/git/git-remote.service.d.ts.map +0 -1
  867. package/dist/packages/core/src/infrastructure/services/git/git-remote.service.js +0 -131
  868. package/dist/packages/core/src/infrastructure/services/ide-launchers/worktree-path.provider.d.ts +0 -12
  869. package/dist/packages/core/src/infrastructure/services/ide-launchers/worktree-path.provider.d.ts.map +0 -1
  870. package/dist/packages/core/src/infrastructure/services/ide-launchers/worktree-path.provider.js +0 -24
  871. package/dist/packages/core/src/infrastructure/services/logging/console-logger.d.ts +0 -14
  872. package/dist/packages/core/src/infrastructure/services/logging/console-logger.d.ts.map +0 -1
  873. package/dist/packages/core/src/infrastructure/services/logging/console-logger.js +0 -53
  874. package/dist/packages/core/src/infrastructure/services/process/process-liveness.adapter.d.ts +0 -11
  875. package/dist/packages/core/src/infrastructure/services/process/process-liveness.adapter.d.ts.map +0 -1
  876. package/dist/packages/core/src/infrastructure/services/process/process-liveness.adapter.js +0 -23
  877. package/dist/packages/core/src/infrastructure/services/spec/spec-yaml-parser.service.d.ts +0 -24
  878. package/dist/packages/core/src/infrastructure/services/spec/spec-yaml-parser.service.d.ts.map +0 -1
  879. package/dist/packages/core/src/infrastructure/services/spec/spec-yaml-parser.service.js +0 -124
  880. package/dist/packages/core/src/infrastructure/services/tool-installer/tool-metadata.provider.d.ts +0 -17
  881. package/dist/packages/core/src/infrastructure/services/tool-installer/tool-metadata.provider.d.ts.map +0 -1
  882. package/dist/packages/core/src/infrastructure/services/tool-installer/tool-metadata.provider.js +0 -31
  883. package/dist/src/presentation/cli/commands/app/cloud-providers/connect.command.d.ts +0 -10
  884. package/dist/src/presentation/cli/commands/app/cloud-providers/connect.command.d.ts.map +0 -1
  885. package/dist/src/presentation/cli/commands/app/cloud-providers/connect.command.js +0 -62
  886. package/dist/src/presentation/cli/commands/app/cloud-providers/github-login.command.d.ts +0 -10
  887. package/dist/src/presentation/cli/commands/app/cloud-providers/github-login.command.d.ts.map +0 -1
  888. package/dist/src/presentation/cli/commands/app/cloud-providers/github-login.command.js +0 -52
  889. package/dist/src/presentation/cli/commands/app/cloud-providers/index.d.ts +0 -10
  890. package/dist/src/presentation/cli/commands/app/cloud-providers/index.d.ts.map +0 -1
  891. package/dist/src/presentation/cli/commands/app/cloud-providers/index.js +0 -18
  892. package/dist/src/presentation/cli/commands/app/cloud-providers/ls.command.d.ts +0 -8
  893. package/dist/src/presentation/cli/commands/app/cloud-providers/ls.command.d.ts.map +0 -1
  894. package/dist/src/presentation/cli/commands/app/cloud-providers/ls.command.js +0 -40
  895. package/dist/src/presentation/cli/commands/app/deploy/index.d.ts +0 -8
  896. package/dist/src/presentation/cli/commands/app/deploy/index.d.ts.map +0 -1
  897. package/dist/src/presentation/cli/commands/app/deploy/index.js +0 -14
  898. package/dist/src/presentation/cli/commands/app/deploy/initiate.command.d.ts +0 -10
  899. package/dist/src/presentation/cli/commands/app/deploy/initiate.command.d.ts.map +0 -1
  900. package/dist/src/presentation/cli/commands/app/deploy/initiate.command.js +0 -86
  901. package/dist/src/presentation/cli/commands/app/deploy/status.command.d.ts +0 -8
  902. package/dist/src/presentation/cli/commands/app/deploy/status.command.d.ts.map +0 -1
  903. package/dist/src/presentation/cli/commands/app/deploy/status.command.js +0 -49
  904. package/dist/src/presentation/cli/commands/app/git/create-remote.command.d.ts +0 -10
  905. package/dist/src/presentation/cli/commands/app/git/create-remote.command.d.ts.map +0 -1
  906. package/dist/src/presentation/cli/commands/app/git/create-remote.command.js +0 -49
  907. package/dist/src/presentation/cli/commands/app/git/index.d.ts +0 -9
  908. package/dist/src/presentation/cli/commands/app/git/index.d.ts.map +0 -1
  909. package/dist/src/presentation/cli/commands/app/git/index.js +0 -13
  910. package/dist/src/presentation/web/app/actions/applications/commit-and-push-application-changes.d.ts +0 -11
  911. package/dist/src/presentation/web/app/actions/applications/commit-and-push-application-changes.d.ts.map +0 -1
  912. package/dist/src/presentation/web/app/actions/applications/commit-and-push-application-changes.js +0 -22
  913. package/dist/src/presentation/web/app/actions/applications/commit-application-changes.d.ts +0 -10
  914. package/dist/src/presentation/web/app/actions/applications/commit-application-changes.d.ts.map +0 -1
  915. package/dist/src/presentation/web/app/actions/applications/commit-application-changes.js +0 -22
  916. package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/initiate/route.d.ts +0 -19
  917. package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/initiate/route.d.ts.map +0 -1
  918. package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/initiate/route.js +0 -43
  919. package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/select-provider/route.d.ts +0 -16
  920. package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/select-provider/route.d.ts.map +0 -1
  921. package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/select-provider/route.js +0 -35
  922. package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/status/route.d.ts +0 -16
  923. package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/status/route.d.ts.map +0 -1
  924. package/dist/src/presentation/web/app/api/applications/[id]/cloud-deploy/status/route.js +0 -23
  925. package/dist/src/presentation/web/app/api/applications/[id]/git/create-remote/route.d.ts +0 -20
  926. package/dist/src/presentation/web/app/api/applications/[id]/git/create-remote/route.d.ts.map +0 -1
  927. package/dist/src/presentation/web/app/api/applications/[id]/git/create-remote/route.js +0 -31
  928. package/dist/src/presentation/web/app/api/cloud-providers/[provider]/connect/route.d.ts +0 -18
  929. package/dist/src/presentation/web/app/api/cloud-providers/[provider]/connect/route.d.ts.map +0 -1
  930. package/dist/src/presentation/web/app/api/cloud-providers/[provider]/connect/route.js +0 -38
  931. package/dist/src/presentation/web/app/api/cloud-providers/github/auth-login/route.d.ts +0 -11
  932. package/dist/src/presentation/web/app/api/cloud-providers/github/auth-login/route.d.ts.map +0 -1
  933. package/dist/src/presentation/web/app/api/cloud-providers/github/auth-login/route.js +0 -24
  934. package/dist/src/presentation/web/app/api/cloud-providers/github/auth-status/route.d.ts +0 -9
  935. package/dist/src/presentation/web/app/api/cloud-providers/github/auth-status/route.d.ts.map +0 -1
  936. package/dist/src/presentation/web/app/api/cloud-providers/github/auth-status/route.js +0 -18
  937. package/dist/src/presentation/web/app/api/cloud-providers/route.d.ts +0 -10
  938. package/dist/src/presentation/web/app/api/cloud-providers/route.d.ts.map +0 -1
  939. package/dist/src/presentation/web/app/api/cloud-providers/route.js +0 -19
  940. package/dist/src/presentation/web/components/features/application-page/app-top-bar.d.ts +0 -27
  941. package/dist/src/presentation/web/components/features/application-page/app-top-bar.d.ts.map +0 -1
  942. package/dist/src/presentation/web/components/features/application-page/app-top-bar.js +0 -24
  943. package/dist/src/presentation/web/components/features/application-page/app-top-bar.stories.d.ts +0 -9
  944. package/dist/src/presentation/web/components/features/application-page/app-top-bar.stories.d.ts.map +0 -1
  945. package/dist/src/presentation/web/components/features/application-page/app-top-bar.stories.js +0 -79
  946. package/dist/src/presentation/web/components/features/application-page/application-page-loader.stories.d.ts +0 -8
  947. package/dist/src/presentation/web/components/features/application-page/application-page-loader.stories.d.ts.map +0 -1
  948. package/dist/src/presentation/web/components/features/application-page/application-page-loader.stories.js +0 -63
  949. package/dist/src/presentation/web/components/features/application-page/cloud-provider-icons.d.ts +0 -22
  950. package/dist/src/presentation/web/components/features/application-page/cloud-provider-icons.d.ts.map +0 -1
  951. package/dist/src/presentation/web/components/features/application-page/cloud-provider-icons.js +0 -28
  952. package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.d.ts +0 -8
  953. package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.d.ts.map +0 -1
  954. package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.js +0 -61
  955. package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.stories.d.ts +0 -10
  956. package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.stories.d.ts.map +0 -1
  957. package/dist/src/presentation/web/components/features/application-page/connect-provider-modal.stories.js +0 -40
  958. package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.d.ts +0 -5
  959. package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.d.ts.map +0 -1
  960. package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.js +0 -37
  961. package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.stories.d.ts +0 -8
  962. package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.stories.d.ts.map +0 -1
  963. package/dist/src/presentation/web/components/features/application-page/copy-prompt-button.stories.js +0 -13
  964. package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.d.ts +0 -9
  965. package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.d.ts.map +0 -1
  966. package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.js +0 -85
  967. package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.stories.d.ts +0 -9
  968. package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.stories.d.ts.map +0 -1
  969. package/dist/src/presentation/web/components/features/application-page/create-github-repo-button.stories.js +0 -19
  970. package/dist/src/presentation/web/components/features/application-page/delete-button.d.ts +0 -6
  971. package/dist/src/presentation/web/components/features/application-page/delete-button.d.ts.map +0 -1
  972. package/dist/src/presentation/web/components/features/application-page/delete-button.js +0 -24
  973. package/dist/src/presentation/web/components/features/application-page/delete-button.stories.d.ts +0 -8
  974. package/dist/src/presentation/web/components/features/application-page/delete-button.stories.d.ts.map +0 -1
  975. package/dist/src/presentation/web/components/features/application-page/delete-button.stories.js +0 -16
  976. package/dist/src/presentation/web/components/features/application-page/deploy-button.d.ts +0 -8
  977. package/dist/src/presentation/web/components/features/application-page/deploy-button.d.ts.map +0 -1
  978. package/dist/src/presentation/web/components/features/application-page/deploy-button.js +0 -94
  979. package/dist/src/presentation/web/components/features/application-page/deploy-button.stories.d.ts +0 -11
  980. package/dist/src/presentation/web/components/features/application-page/deploy-button.stories.d.ts.map +0 -1
  981. package/dist/src/presentation/web/components/features/application-page/deploy-button.stories.js +0 -53
  982. package/dist/src/presentation/web/components/features/application-page/git-status-cluster.d.ts +0 -13
  983. package/dist/src/presentation/web/components/features/application-page/git-status-cluster.d.ts.map +0 -1
  984. package/dist/src/presentation/web/components/features/application-page/git-status-cluster.js +0 -113
  985. package/dist/src/presentation/web/components/features/application-page/git-status-cluster.stories.d.ts +0 -8
  986. package/dist/src/presentation/web/components/features/application-page/git-status-cluster.stories.d.ts.map +0 -1
  987. package/dist/src/presentation/web/components/features/application-page/git-status-cluster.stories.js +0 -19
  988. package/dist/src/presentation/web/components/features/application-page/path-cluster.d.ts +0 -6
  989. package/dist/src/presentation/web/components/features/application-page/path-cluster.d.ts.map +0 -1
  990. package/dist/src/presentation/web/components/features/application-page/path-cluster.js +0 -32
  991. package/dist/src/presentation/web/components/features/application-page/path-cluster.stories.d.ts +0 -8
  992. package/dist/src/presentation/web/components/features/application-page/path-cluster.stories.d.ts.map +0 -1
  993. package/dist/src/presentation/web/components/features/application-page/path-cluster.stories.js +0 -19
  994. package/dist/src/presentation/web/components/features/application-page/provider-dropdown.d.ts +0 -26
  995. package/dist/src/presentation/web/components/features/application-page/provider-dropdown.d.ts.map +0 -1
  996. package/dist/src/presentation/web/components/features/application-page/provider-dropdown.js +0 -30
  997. package/dist/src/presentation/web/components/features/application-page/provider-dropdown.stories.d.ts +0 -10
  998. package/dist/src/presentation/web/components/features/application-page/provider-dropdown.stories.d.ts.map +0 -1
  999. package/dist/src/presentation/web/components/features/application-page/provider-dropdown.stories.js +0 -80
  1000. package/dist/src/presentation/web/components/features/application-page/resizable-split.d.ts +0 -7
  1001. package/dist/src/presentation/web/components/features/application-page/resizable-split.d.ts.map +0 -1
  1002. package/dist/src/presentation/web/components/features/application-page/resizable-split.js +0 -30
  1003. package/dist/src/presentation/web/components/features/application-page/resizable-split.stories.d.ts +0 -8
  1004. package/dist/src/presentation/web/components/features/application-page/resizable-split.stories.d.ts.map +0 -1
  1005. package/dist/src/presentation/web/components/features/application-page/resizable-split.stories.js +0 -23
  1006. package/dist/src/presentation/web/components/features/application-page/run-dev-button.stories.d.ts +0 -12
  1007. package/dist/src/presentation/web/components/features/application-page/run-dev-button.stories.d.ts.map +0 -1
  1008. package/dist/src/presentation/web/components/features/application-page/run-dev-button.stories.js +0 -53
  1009. package/dist/src/presentation/web/components/features/application-page/session-chip.d.ts +0 -9
  1010. package/dist/src/presentation/web/components/features/application-page/session-chip.d.ts.map +0 -1
  1011. package/dist/src/presentation/web/components/features/application-page/session-chip.js +0 -38
  1012. package/dist/src/presentation/web/components/features/application-page/session-chip.stories.d.ts +0 -8
  1013. package/dist/src/presentation/web/components/features/application-page/session-chip.stories.d.ts.map +0 -1
  1014. package/dist/src/presentation/web/components/features/application-page/session-chip.stories.js +0 -16
  1015. package/dist/src/presentation/web/components/features/application-page/status-pill.d.ts +0 -8
  1016. package/dist/src/presentation/web/components/features/application-page/status-pill.d.ts.map +0 -1
  1017. package/dist/src/presentation/web/components/features/application-page/status-pill.js +0 -16
  1018. package/dist/src/presentation/web/components/features/application-page/status-pill.stories.d.ts +0 -8
  1019. package/dist/src/presentation/web/components/features/application-page/status-pill.stories.d.ts.map +0 -1
  1020. package/dist/src/presentation/web/components/features/application-page/status-pill.stories.js +0 -22
  1021. package/dist/src/presentation/web/components/features/application-page/terminal-tab.stories.d.ts +0 -15
  1022. package/dist/src/presentation/web/components/features/application-page/terminal-tab.stories.d.ts.map +0 -1
  1023. package/dist/src/presentation/web/components/features/application-page/terminal-tab.stories.js +0 -31
  1024. package/dist/src/presentation/web/components/features/application-page/use-dev-server-coordinator.d.ts +0 -14
  1025. package/dist/src/presentation/web/components/features/application-page/use-dev-server-coordinator.d.ts.map +0 -1
  1026. package/dist/src/presentation/web/components/features/application-page/use-dev-server-coordinator.js +0 -82
  1027. package/dist/src/presentation/web/components/features/application-page/view-body.d.ts +0 -17
  1028. package/dist/src/presentation/web/components/features/application-page/view-body.d.ts.map +0 -1
  1029. package/dist/src/presentation/web/components/features/application-page/view-body.js +0 -25
  1030. package/dist/src/presentation/web/components/features/application-page/view-body.stories.d.ts +0 -8
  1031. package/dist/src/presentation/web/components/features/application-page/view-body.stories.d.ts.map +0 -1
  1032. package/dist/src/presentation/web/components/features/application-page/view-body.stories.js +0 -42
  1033. package/dist/src/presentation/web/components/features/application-page/view-switcher.d.ts +0 -10
  1034. package/dist/src/presentation/web/components/features/application-page/view-switcher.d.ts.map +0 -1
  1035. package/dist/src/presentation/web/components/features/application-page/view-switcher.js +0 -18
  1036. package/dist/src/presentation/web/components/features/application-page/view-switcher.stories.d.ts +0 -8
  1037. package/dist/src/presentation/web/components/features/application-page/view-switcher.stories.d.ts.map +0 -1
  1038. package/dist/src/presentation/web/components/features/application-page/view-switcher.stories.js +0 -13
  1039. package/dist/src/presentation/web/components/features/application-page/web-preview-tab.stories.d.ts +0 -10
  1040. package/dist/src/presentation/web/components/features/application-page/web-preview-tab.stories.d.ts.map +0 -1
  1041. package/dist/src/presentation/web/components/features/application-page/web-preview-tab.stories.js +0 -49
  1042. package/dist/src/presentation/web/hooks/use-cloud-deploy-action.d.ts +0 -20
  1043. package/dist/src/presentation/web/hooks/use-cloud-deploy-action.d.ts.map +0 -1
  1044. package/dist/src/presentation/web/hooks/use-cloud-deploy-action.js +0 -120
  1045. package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route/app-paths-manifest.json +0 -3
  1046. package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route/build-manifest.json +0 -11
  1047. package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route/server-reference-manifest.json +0 -4
  1048. package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route.js +0 -7
  1049. package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route.js.nft.json +0 -1
  1050. package/web/.next/server/app/api/applications/[id]/cloud-deploy/initiate/route_client-reference-manifest.js +0 -2
  1051. package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route/app-paths-manifest.json +0 -3
  1052. package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route/build-manifest.json +0 -11
  1053. package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route/server-reference-manifest.json +0 -4
  1054. package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route.js +0 -7
  1055. package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route.js.map +0 -5
  1056. package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route.js.nft.json +0 -1
  1057. package/web/.next/server/app/api/applications/[id]/cloud-deploy/select-provider/route_client-reference-manifest.js +0 -2
  1058. package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route/app-paths-manifest.json +0 -3
  1059. package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route/build-manifest.json +0 -11
  1060. package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route/server-reference-manifest.json +0 -4
  1061. package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route.js +0 -7
  1062. package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route.js.map +0 -5
  1063. package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route.js.nft.json +0 -1
  1064. package/web/.next/server/app/api/applications/[id]/cloud-deploy/status/route_client-reference-manifest.js +0 -2
  1065. package/web/.next/server/app/api/applications/[id]/git/create-remote/route/app-paths-manifest.json +0 -3
  1066. package/web/.next/server/app/api/applications/[id]/git/create-remote/route/build-manifest.json +0 -11
  1067. package/web/.next/server/app/api/applications/[id]/git/create-remote/route/server-reference-manifest.json +0 -4
  1068. package/web/.next/server/app/api/applications/[id]/git/create-remote/route.js +0 -7
  1069. package/web/.next/server/app/api/applications/[id]/git/create-remote/route.js.map +0 -5
  1070. package/web/.next/server/app/api/applications/[id]/git/create-remote/route.js.nft.json +0 -1
  1071. package/web/.next/server/app/api/applications/[id]/git/create-remote/route_client-reference-manifest.js +0 -2
  1072. package/web/.next/server/app/api/cloud-providers/[provider]/connect/route/app-paths-manifest.json +0 -3
  1073. package/web/.next/server/app/api/cloud-providers/[provider]/connect/route/build-manifest.json +0 -11
  1074. package/web/.next/server/app/api/cloud-providers/[provider]/connect/route/server-reference-manifest.json +0 -4
  1075. package/web/.next/server/app/api/cloud-providers/[provider]/connect/route.js +0 -7
  1076. package/web/.next/server/app/api/cloud-providers/[provider]/connect/route.js.map +0 -5
  1077. package/web/.next/server/app/api/cloud-providers/[provider]/connect/route.js.nft.json +0 -1
  1078. package/web/.next/server/app/api/cloud-providers/[provider]/connect/route_client-reference-manifest.js +0 -2
  1079. package/web/.next/server/app/api/cloud-providers/github/auth-login/route/app-paths-manifest.json +0 -3
  1080. package/web/.next/server/app/api/cloud-providers/github/auth-login/route/build-manifest.json +0 -11
  1081. package/web/.next/server/app/api/cloud-providers/github/auth-login/route/server-reference-manifest.json +0 -4
  1082. package/web/.next/server/app/api/cloud-providers/github/auth-login/route.js +0 -7
  1083. package/web/.next/server/app/api/cloud-providers/github/auth-login/route.js.map +0 -5
  1084. package/web/.next/server/app/api/cloud-providers/github/auth-login/route.js.nft.json +0 -1
  1085. package/web/.next/server/app/api/cloud-providers/github/auth-login/route_client-reference-manifest.js +0 -2
  1086. package/web/.next/server/app/api/cloud-providers/github/auth-status/route/app-paths-manifest.json +0 -3
  1087. package/web/.next/server/app/api/cloud-providers/github/auth-status/route/build-manifest.json +0 -11
  1088. package/web/.next/server/app/api/cloud-providers/github/auth-status/route/server-reference-manifest.json +0 -4
  1089. package/web/.next/server/app/api/cloud-providers/github/auth-status/route.js +0 -7
  1090. package/web/.next/server/app/api/cloud-providers/github/auth-status/route.js.map +0 -5
  1091. package/web/.next/server/app/api/cloud-providers/github/auth-status/route.js.nft.json +0 -1
  1092. package/web/.next/server/app/api/cloud-providers/github/auth-status/route_client-reference-manifest.js +0 -2
  1093. package/web/.next/server/app/api/cloud-providers/route/app-paths-manifest.json +0 -3
  1094. package/web/.next/server/app/api/cloud-providers/route/build-manifest.json +0 -11
  1095. package/web/.next/server/app/api/cloud-providers/route/server-reference-manifest.json +0 -4
  1096. package/web/.next/server/app/api/cloud-providers/route.js +0 -7
  1097. package/web/.next/server/app/api/cloud-providers/route.js.map +0 -5
  1098. package/web/.next/server/app/api/cloud-providers/route.js.nft.json +0 -1
  1099. package/web/.next/server/app/api/cloud-providers/route_client-reference-manifest.js +0 -2
  1100. package/web/.next/server/chunks/20c8b_app_api_applications_[id]_cloud-deploy_select-provider_route_actions_0b41b3f7.js +0 -3
  1101. package/web/.next/server/chunks/20c8b_app_api_applications_[id]_cloud-deploy_select-provider_route_actions_0b41b3f7.js.map +0 -1
  1102. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_cloud-providers_route_actions_b29d775a.js +0 -3
  1103. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_cloud-providers_route_actions_b29d775a.js.map +0 -1
  1104. package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_cloud-deploy_initiate_route_actions_b4867bc6.js +0 -3
  1105. package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_cloud-deploy_initiate_route_actions_b4867bc6.js.map +0 -1
  1106. package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_cloud-deploy_status_route_actions_9a3b876b.js +0 -3
  1107. package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_cloud-deploy_status_route_actions_9a3b876b.js.map +0 -1
  1108. package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_git_create-remote_route_actions_41c42379.js +0 -3
  1109. package/web/.next/server/chunks/8ba4b_server_app_api_applications_[id]_git_create-remote_route_actions_41c42379.js.map +0 -1
  1110. package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_[provider]_connect_route_actions_a0ca54c4.js +0 -3
  1111. package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_[provider]_connect_route_actions_a0ca54c4.js.map +0 -1
  1112. package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_github_auth-login_route_actions_7bef847d.js +0 -3
  1113. package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_github_auth-login_route_actions_7bef847d.js.map +0 -1
  1114. package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_github_auth-status_route_actions_8cdaeffc.js +0 -3
  1115. package/web/.next/server/chunks/8ba4b_server_app_api_cloud-providers_github_auth-status_route_actions_8cdaeffc.js.map +0 -1
  1116. package/web/.next/server/chunks/[root-of-the-server]__2c15d675._.js +0 -3
  1117. package/web/.next/server/chunks/[root-of-the-server]__2c15d675._.js.map +0 -1
  1118. package/web/.next/server/chunks/[root-of-the-server]__3b3b8980._.js +0 -9
  1119. package/web/.next/server/chunks/[root-of-the-server]__3b3b8980._.js.map +0 -1
  1120. package/web/.next/server/chunks/[root-of-the-server]__631f5bbe._.js +0 -3
  1121. package/web/.next/server/chunks/[root-of-the-server]__631f5bbe._.js.map +0 -1
  1122. package/web/.next/server/chunks/[root-of-the-server]__770c0c09._.js +0 -3
  1123. package/web/.next/server/chunks/[root-of-the-server]__770c0c09._.js.map +0 -1
  1124. package/web/.next/server/chunks/[root-of-the-server]__83e9501d._.js +0 -3
  1125. package/web/.next/server/chunks/[root-of-the-server]__83e9501d._.js.map +0 -1
  1126. package/web/.next/server/chunks/[root-of-the-server]__9017bfe4._.js +0 -3
  1127. package/web/.next/server/chunks/[root-of-the-server]__9017bfe4._.js.map +0 -1
  1128. package/web/.next/server/chunks/[root-of-the-server]__90eb0e51._.js +0 -3
  1129. package/web/.next/server/chunks/[root-of-the-server]__90eb0e51._.js.map +0 -1
  1130. package/web/.next/server/chunks/[root-of-the-server]__9bf8eb9d._.js +0 -3
  1131. package/web/.next/server/chunks/[root-of-the-server]__9bf8eb9d._.js.map +0 -1
  1132. package/web/.next/server/chunks/[root-of-the-server]__b78eeb4f._.js +0 -3
  1133. package/web/.next/server/chunks/[root-of-the-server]__b78eeb4f._.js.map +0 -1
  1134. package/web/.next/server/chunks/[root-of-the-server]__cac531cb._.js +0 -3
  1135. package/web/.next/server/chunks/[root-of-the-server]__cac531cb._.js.map +0 -1
  1136. package/web/.next/server/chunks/[root-of-the-server]__e7e98696._.js +0 -3
  1137. package/web/.next/server/chunks/[root-of-the-server]__e7e98696._.js.map +0 -1
  1138. package/web/.next/server/chunks/ssr/[root-of-the-server]__01559f4c._.js +0 -3
  1139. package/web/.next/server/chunks/ssr/[root-of-the-server]__01559f4c._.js.map +0 -1
  1140. package/web/.next/server/chunks/ssr/[root-of-the-server]__0f0865b6._.js +0 -3
  1141. package/web/.next/server/chunks/ssr/[root-of-the-server]__0f0865b6._.js.map +0 -1
  1142. package/web/.next/server/chunks/ssr/[root-of-the-server]__494cf0fb._.js.map +0 -1
  1143. package/web/.next/server/chunks/ssr/[root-of-the-server]__78e103c3._.js +0 -3
  1144. package/web/.next/server/chunks/ssr/[root-of-the-server]__78e103c3._.js.map +0 -1
  1145. package/web/.next/server/chunks/ssr/_15173081._.js +0 -3
  1146. package/web/.next/server/chunks/ssr/_15173081._.js.map +0 -1
  1147. package/web/.next/server/chunks/ssr/_1da7af78._.js +0 -3
  1148. package/web/.next/server/chunks/ssr/_1da7af78._.js.map +0 -1
  1149. package/web/.next/server/chunks/ssr/_22d60ea8._.js +0 -3
  1150. package/web/.next/server/chunks/ssr/_22d60ea8._.js.map +0 -1
  1151. package/web/.next/server/chunks/ssr/_28d8fc85._.js +0 -3
  1152. package/web/.next/server/chunks/ssr/_28d8fc85._.js.map +0 -1
  1153. package/web/.next/server/chunks/ssr/_35b56ded._.js +0 -3
  1154. package/web/.next/server/chunks/ssr/_35b56ded._.js.map +0 -1
  1155. package/web/.next/server/chunks/ssr/_4b57bcc3._.js +0 -9
  1156. package/web/.next/server/chunks/ssr/_4b57bcc3._.js.map +0 -1
  1157. package/web/.next/server/chunks/ssr/_5b868d9b._.js +0 -3
  1158. package/web/.next/server/chunks/ssr/_5b868d9b._.js.map +0 -1
  1159. package/web/.next/server/chunks/ssr/_5bf2415e._.js.map +0 -1
  1160. package/web/.next/server/chunks/ssr/_6401fcb4._.js +0 -3
  1161. package/web/.next/server/chunks/ssr/_6401fcb4._.js.map +0 -1
  1162. package/web/.next/server/chunks/ssr/_66d02826._.js +0 -3
  1163. package/web/.next/server/chunks/ssr/_66d02826._.js.map +0 -1
  1164. package/web/.next/server/chunks/ssr/_68befcc0._.js +0 -3
  1165. package/web/.next/server/chunks/ssr/_68befcc0._.js.map +0 -1
  1166. package/web/.next/server/chunks/ssr/_72cc0c05._.js.map +0 -1
  1167. package/web/.next/server/chunks/ssr/_82c47cc2._.js +0 -3
  1168. package/web/.next/server/chunks/ssr/_82c47cc2._.js.map +0 -1
  1169. package/web/.next/server/chunks/ssr/_bb8735f7._.js.map +0 -1
  1170. package/web/.next/server/chunks/ssr/_e9a4c41e._.js +0 -3
  1171. package/web/.next/server/chunks/ssr/_e9a4c41e._.js.map +0 -1
  1172. package/web/.next/server/chunks/ssr/_ef697bcb._.js +0 -3
  1173. package/web/.next/server/chunks/ssr/_ef697bcb._.js.map +0 -1
  1174. package/web/.next/server/chunks/ssr/node_modules__pnpm_03825509._.js +0 -3
  1175. package/web/.next/server/chunks/ssr/node_modules__pnpm_03825509._.js.map +0 -1
  1176. package/web/.next/server/chunks/ssr/node_modules__pnpm_747b43ac._.js +0 -3
  1177. package/web/.next/server/chunks/ssr/node_modules__pnpm_747b43ac._.js.map +0 -1
  1178. package/web/.next/server/chunks/ssr/node_modules__pnpm_b4a5d907._.js +0 -3
  1179. package/web/.next/server/chunks/ssr/node_modules__pnpm_b4a5d907._.js.map +0 -1
  1180. package/web/.next/static/chunks/0412f29f896ee09c.js +0 -1
  1181. package/web/.next/static/chunks/0b7fc927918d27b7.js +0 -1
  1182. package/web/.next/static/chunks/0de93c756f719ec3.js +0 -1
  1183. package/web/.next/static/chunks/19327577e3a31a12.js +0 -1
  1184. package/web/.next/static/chunks/21122562afc22707.js +0 -1
  1185. package/web/.next/static/chunks/4f09cbb36f0ee7bc.js +0 -1
  1186. package/web/.next/static/chunks/4fdc8e750df8ca80.js +0 -1
  1187. package/web/.next/static/chunks/544aff2bfab6627d.js +0 -1
  1188. package/web/.next/static/chunks/5a686ebc9fc2add1.js +0 -1
  1189. package/web/.next/static/chunks/63b0b9bd3d9e77c1.js +0 -1
  1190. package/web/.next/static/chunks/693bac34da5f5767.js +0 -1
  1191. package/web/.next/static/chunks/6a7d6f15d3366b65.js +0 -1
  1192. package/web/.next/static/chunks/6d56af6ae0a033a6.js +0 -5
  1193. package/web/.next/static/chunks/8a44ba83aaeb4b83.js +0 -1
  1194. package/web/.next/static/chunks/9b34d8c773ee0165.js +0 -1
  1195. package/web/.next/static/chunks/abe2a450d1e2f77d.js +0 -1
  1196. package/web/.next/static/chunks/b7c8bf8006038a6c.js +0 -1
  1197. package/web/.next/static/chunks/c6011887cf4bc18e.js +0 -1
  1198. package/web/.next/static/chunks/c7659438d8afcb6b.js +0 -1
  1199. package/web/.next/static/chunks/d9ca1010cff1e77d.css +0 -1
  1200. package/web/.next/static/chunks/f7677be24e542028.js +0 -7
  1201. package/web/.next/static/chunks/fb0dc8b38808eaae.js +0 -1
  1202. /package/dist/packages/core/src/application/{use-cases/applications → workflows}/application-creation.workflow.d.ts +0 -0
  1203. /package/dist/packages/core/src/application/{use-cases/applications → workflows}/application-creation.workflow.js +0 -0
  1204. /package/web/.next/server/app/{api/applications/[id]/cloud-deploy/initiate/route.js.map → plugins/page.js.map} +0 -0
  1205. /package/web/.next/server/chunks/{[root-of-the-server]__582ebd78._.js.map → [root-of-the-server]__0702fed9._.js.map} +0 -0
  1206. /package/web/.next/server/chunks/{[root-of-the-server]__76a92098._.js.map → [root-of-the-server]__88c71186._.js.map} +0 -0
  1207. /package/web/.next/server/chunks/{[root-of-the-server]__7de24eaf._.js.map → [root-of-the-server]__8b6abaa3._.js.map} +0 -0
  1208. /package/web/.next/server/chunks/{[root-of-the-server]__1133b25d._.js.map → [root-of-the-server]__dbb420e4._.js.map} +0 -0
  1209. /package/web/.next/static/{FRWpPK0Bg6IM4rVnqge0Z → H1ozIesERGbwQQ6nOO8UC}/_buildManifest.js +0 -0
  1210. /package/web/.next/static/{FRWpPK0Bg6IM4rVnqge0Z → H1ozIesERGbwQQ6nOO8UC}/_clientMiddlewareManifest.json +0 -0
  1211. /package/web/.next/static/{FRWpPK0Bg6IM4rVnqge0Z → H1ozIesERGbwQQ6nOO8UC}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,917840,e=>{"use strict";var t=e.i(152155),r=e.i(711434),n=e.i(360112),o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),a=o((e,t)=>{var r=Object.defineProperty,n=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),o=(e,t,n)=>{let o;return(o="symbol"!=typeof t?t+"":t)in e?r(e,o,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[o]=n},a=n((e,t)=>{function r(e,t){e[t]?e[t]++:e[t]=1}function n(e,t){--e[t]||delete e[t]}function a(e,t,r,n){var o=""+t,a=""+r;if(!e&&o>a){var s=o;o=a,a=s}return o+"\x01"+a+"\x01"+(void 0===n?"\0":n)}function s(e,t){return a(e,t.v,t.w,t.name)}t.exports=class{constructor(e){o(this,"_isDirected",!0),o(this,"_isMultigraph",!1),o(this,"_isCompound",!1),o(this,"_label"),o(this,"_defaultNodeLabelFn",()=>{}),o(this,"_defaultEdgeLabelFn",()=>{}),o(this,"_nodes",{}),o(this,"_in",{}),o(this,"_preds",{}),o(this,"_out",{}),o(this,"_sucs",{}),o(this,"_edgeObjs",{}),o(this,"_edgeLabels",{}),o(this,"_nodeCount",0),o(this,"_edgeCount",0),o(this,"_parent"),o(this,"_children"),e&&(this._isDirected=!Object.hasOwn(e,"directed")||e.directed,this._isMultigraph=!!Object.hasOwn(e,"multigraph")&&e.multigraph,this._isCompound=!!Object.hasOwn(e,"compound")&&e.compound),this._isCompound&&(this._parent={},this._children={},this._children["\0"]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return this._defaultNodeLabelFn=e,"function"!=typeof e&&(this._defaultNodeLabelFn=()=>e),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var e=this;return this.nodes().filter(t=>0===Object.keys(e._in[t]).length)}sinks(){var e=this;return this.nodes().filter(t=>0===Object.keys(e._out[t]).length)}setNodes(e,t){var r=arguments,n=this;return e.forEach(function(e){r.length>1?n.setNode(e,t):n.setNode(e)}),this}setNode(e,t){return Object.hasOwn(this._nodes,e)?arguments.length>1&&(this._nodes[e]=t):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]="\0",this._children[e]={},this._children["\0"][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount),this}node(e){return this._nodes[e]}hasNode(e){return Object.hasOwn(this._nodes,e)}removeNode(e){var t=this;if(Object.hasOwn(this._nodes,e)){var r=e=>t.removeEdge(t._edgeObjs[e]);delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],this.children(e).forEach(function(e){t.setParent(e)}),delete this._children[e]),Object.keys(this._in[e]).forEach(r),delete this._in[e],delete this._preds[e],Object.keys(this._out[e]).forEach(r),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,t){if(!this._isCompound)throw Error("Cannot set parent in a non-compound graph");if(void 0===t)t="\0";else{t+="";for(var r=t;void 0!==r;r=this.parent(r))if(r===e)throw Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var t=this._parent[e];if("\0"!==t)return t}}children(e="\0"){if(this._isCompound){var t=this._children[e];if(t)return Object.keys(t)}else{if("\0"===e)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var t=this._preds[e];if(t)return Object.keys(t)}successors(e){var t=this._sucs[e];if(t)return Object.keys(t)}neighbors(e){var t=this.predecessors(e);if(t){let n=new Set(t);for(var r of this.successors(e))n.add(r);return Array.from(n.values())}}isLeaf(e){return 0===(this.isDirected()?this.successors(e):this.neighbors(e)).length}filterNodes(e){var t=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());var r=this;Object.entries(this._nodes).forEach(function([r,n]){e(r)&&t.setNode(r,n)}),Object.values(this._edgeObjs).forEach(function(e){t.hasNode(e.v)&&t.hasNode(e.w)&&t.setEdge(e,r.edge(e))});var n={};return this._isCompound&&t.nodes().forEach(e=>t.setParent(e,function e(o){var a=r.parent(o);return void 0===a||t.hasNode(a)?(n[o]=a,a):a in n?n[a]:e(a)}(e))),t}setDefaultEdgeLabel(e){return this._defaultEdgeLabelFn=e,"function"!=typeof e&&(this._defaultEdgeLabelFn=()=>e),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(e,t){var r=this,n=arguments;return e.reduce(function(e,o){return n.length>1?r.setEdge(e,o,t):r.setEdge(e,o),o}),this}setEdge(){var e,t,n,o,s=!1,i=arguments[0];"object"==typeof i&&null!==i&&"v"in i?(e=i.v,t=i.w,n=i.name,2==arguments.length&&(o=arguments[1],s=!0)):(e=i,t=arguments[1],n=arguments[3],arguments.length>2&&(o=arguments[2],s=!0)),e=""+e,t=""+t,void 0!==n&&(n=""+n);var l=a(this._isDirected,e,t,n);if(Object.hasOwn(this._edgeLabels,l))return s&&(this._edgeLabels[l]=o),this;if(void 0!==n&&!this._isMultigraph)throw Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[l]=s?o:this._defaultEdgeLabelFn(e,t,n);var d=function(e,t,r,n){var o=""+t,a=""+r;if(!e&&o>a){var s=o;o=a,a=s}var i={v:o,w:a};return n&&(i.name=n),i}(this._isDirected,e,t,n);return e=d.v,t=d.w,Object.freeze(d),this._edgeObjs[l]=d,r(this._preds[t],e),r(this._sucs[e],t),this._in[t][l]=d,this._out[e][l]=d,this._edgeCount++,this}edge(e,t,r){var n=1==arguments.length?s(this._isDirected,arguments[0]):a(this._isDirected,e,t,r);return this._edgeLabels[n]}edgeAsObj(){let e=this.edge(...arguments);return"object"!=typeof e?{label:e}:e}hasEdge(e,t,r){var n=1==arguments.length?s(this._isDirected,arguments[0]):a(this._isDirected,e,t,r);return Object.hasOwn(this._edgeLabels,n)}removeEdge(e,t,r){var o=1==arguments.length?s(this._isDirected,arguments[0]):a(this._isDirected,e,t,r),i=this._edgeObjs[o];return i&&(e=i.v,t=i.w,delete this._edgeLabels[o],delete this._edgeObjs[o],n(this._preds[t],e),n(this._sucs[e],t),delete this._in[t][o],delete this._out[e][o],this._edgeCount--),this}inEdges(e,t){return this.isDirected()?this.filterEdges(this._in[e],e,t):this.nodeEdges(e,t)}outEdges(e,t){return this.isDirected()?this.filterEdges(this._out[e],e,t):this.nodeEdges(e,t)}nodeEdges(e,t){if(e in this._nodes)return this.filterEdges({...this._in[e],...this._out[e]},e,t)}filterEdges(e,t,r){if(e){var n=Object.values(e);return r?n.filter(function(e){return e.v===t&&e.w===r||e.v===r&&e.w===t}):n}}}}),s=n((e,t)=>{t.exports="3.0.2"}),i=n((e,t)=>{t.exports={Graph:a(),version:s()}}),l=n((e,t)=>{var r=a();t.exports={write:function(e){var t,r,n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:(t=e).nodes().map(function(e){var r=t.node(e),n=t.parent(e),o={v:e};return void 0!==r&&(o.value=r),void 0!==n&&(o.parent=n),o}),edges:(r=e).edges().map(function(e){var t=r.edge(e),n={v:e.v,w:e.w};return void 0!==e.name&&(n.name=e.name),void 0!==t&&(n.value=t),n})};return void 0!==e.graph()&&(n.value=structuredClone(e.graph())),n},read:function(e){var t=new r(e.options).setGraph(e.value);return e.nodes.forEach(function(e){t.setNode(e.v,e.value),e.parent&&t.setParent(e.v,e.parent)}),e.edges.forEach(function(e){t.setEdge({v:e.v,w:e.w,name:e.name},e.value)}),t}}}),d=n((e,t)=>{t.exports=function(e,t,n,o){return function(e,t,r,n){var o={},a=!0,s=0,i=e.nodes(),l=function(e){var t=r(e);o[e.v].distance+t<o[e.w].distance&&(o[e.w]={distance:o[e.v].distance+t,predecessor:e.v},a=!0)},d=function(){i.forEach(function(e){n(e).forEach(function(t){var r=t.v===e?t.v:t.w,n=r===t.v?t.w:t.v;l({v:r,w:n})})})};i.forEach(function(e){o[e]={distance:e===t?0:1/0}});for(var c=i.length,u=1;u<c&&(a=!1,s++,d(),a);u++);if(s===c-1&&(a=!1,d(),a))throw Error("The graph contains a negative weight cycle");return o}(e,String(t),n||r,o||function(t){return e.outEdges(t)})};var r=()=>1}),c=n((e,t)=>{t.exports=function(e){var t,r={},n=[];return e.nodes().forEach(function(o){t=[],function n(o){Object.hasOwn(r,o)||(r[o]=!0,t.push(o),e.successors(o).forEach(n),e.predecessors(o).forEach(n))}(o),t.length&&n.push(t)}),n}}),u=n((e,t)=>{t.exports=class{constructor(){o(this,"_arr",[]),o(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(e){return e.key})}has(e){return Object.hasOwn(this._keyIndices,e)}priority(e){var t=this._keyIndices[e];if(void 0!==t)return this._arr[t].priority}min(){if(0===this.size())throw Error("Queue underflow");return this._arr[0].key}add(e,t){var r=this._keyIndices;if(!Object.hasOwn(r,e=String(e))){var n=this._arr,o=n.length;return r[e]=o,n.push({key:e,priority:t}),this._decrease(o),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key}decrease(e,t){var r=this._keyIndices[e];if(t>this._arr[r].priority)throw Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[r].priority+" New: "+t);this._arr[r].priority=t,this._decrease(r)}_heapify(e){var t=this._arr,r=2*e,n=r+1,o=e;r<t.length&&(o=t[r].priority<t[o].priority?r:o,n<t.length&&(o=t[n].priority<t[o].priority?n:o),o!==e&&(this._swap(e,o),this._heapify(o)))}_decrease(e){for(var t,r=this._arr,n=r[e].priority;0!==e&&!(r[t=e>>1].priority<n);)this._swap(e,t),e=t}_swap(e,t){var r=this._arr,n=this._keyIndices,o=r[e],a=r[t];r[e]=a,r[t]=o,n[a.key]=e,n[o.key]=t}}}),h=n((e,t)=>{var r=u();t.exports=function(e,t,o,a){return function(e,t,n,o){var a,s,i={},l=new r,d=function(e){var t=e.v!==a?e.v:e.w,r=i[t],o=n(e),d=s.distance+o;if(o<0)throw Error("dijkstra does not allow negative edge weights. Bad edge: "+e+" Weight: "+o);d<r.distance&&(r.distance=d,r.predecessor=a,l.decrease(t,d))};for(e.nodes().forEach(function(e){var r=e===t?0:1/0;i[e]={distance:r},l.add(e,r)});l.size()>0&&(s=i[a=l.removeMin()]).distance!==1/0;)o(a).forEach(d);return i}(e,String(t),o||n,a||function(t){return e.outEdges(t)})};var n=()=>1}),p=n((e,t)=>{var r=h();t.exports=function(e,t,n){return e.nodes().reduce(function(o,a){return o[a]=r(e,a,t,n),o},{})}}),f=n((e,t)=>{t.exports=function(e,t,r){if(void 0!==e[t].predecessor)throw Error("Invalid source vertex");if(void 0===e[r].predecessor&&r!==t)throw Error("Invalid destination vertex");return{weight:e[r].distance,path:function(e,t,r){for(var n=[],o=r;o!==t;)n.push(o),o=e[o].predecessor;return n.push(t),n.reverse()}(e,t,r)}}}),g=n((e,t)=>{t.exports=function(e){var t=0,r=[],n={},o=[];return e.nodes().forEach(function(a){Object.hasOwn(n,a)||function a(s){var i=n[s]={onStack:!0,lowlink:t,index:t++};if(r.push(s),e.successors(s).forEach(function(e){Object.hasOwn(n,e)?n[e].onStack&&(i.lowlink=Math.min(i.lowlink,n[e].index)):(a(e),i.lowlink=Math.min(i.lowlink,n[e].lowlink))}),i.lowlink===i.index){var l,d=[];do n[l=r.pop()].onStack=!1,d.push(l);while(s!==l)o.push(d)}}(a)}),o}}),m=n((e,t)=>{var r=g();t.exports=function(e){return r(e).filter(function(t){return t.length>1||1===t.length&&e.hasEdge(t[0],t[0])})}}),v=n((e,t)=>{t.exports=function(e,t,n){var o,a,s,i,l;return o=e,a=t||r,s=n||function(t){return e.outEdges(t)},i={},(l=o.nodes()).forEach(function(e){i[e]={},i[e][e]={distance:0},l.forEach(function(t){e!==t&&(i[e][t]={distance:1/0})}),s(e).forEach(function(t){var r=t.v===e?t.w:t.v,n=a(t);i[e][r]={distance:n,predecessor:e}})}),l.forEach(function(e){var t=i[e];l.forEach(function(r){var n=i[r];l.forEach(function(r){var o=n[e],a=t[r],s=n[r],i=o.distance+a.distance;i<s.distance&&(s.distance=i,s.predecessor=a.predecessor)})})}),i};var r=()=>1}),x=n((e,t)=>{function r(e){var t={},r={},o=[];if(e.sinks().forEach(function a(s){if(Object.hasOwn(r,s))throw new n;Object.hasOwn(t,s)||(r[s]=!0,t[s]=!0,e.predecessors(s).forEach(a),delete r[s],o.push(s))}),Object.keys(t).length!==e.nodeCount())throw new n;return o}var n=class extends Error{constructor(){super(...arguments)}};t.exports=r,r.CycleException=n}),y=n((e,t)=>{var r=x();t.exports=function(e){try{r(e)}catch(e){if(e instanceof r.CycleException)return!1;throw e}return!0}}),b=n((e,t)=>{t.exports=function(e,t,r,n,o){Array.isArray(t)||(t=[t]);var a=(e.isDirected()?e.successors:e.neighbors).bind(e),s={};return t.forEach(function(t){if(!e.hasNode(t))throw Error("Graph does not have node: "+t);o=function e(t,r,n,o,a,s,i){return Object.hasOwn(o,r)||(o[r]=!0,n||(i=s(i,r)),a(r).forEach(function(r){i=e(t,r,n,o,a,s,i)}),n&&(i=s(i,r))),i}(e,t,"post"===r,s,a,n,o)}),o}}),w=n((e,t)=>{var r=b();t.exports=function(e,t,n){return r(e,t,n,function(e,t){return e.push(t),e},[])}}),k=n((e,t)=>{var r=w();t.exports=function(e,t){return r(e,t,"post")}}),j=n((e,t)=>{var r=w();t.exports=function(e,t){return r(e,t,"pre")}}),N=n((e,t)=>{var r=a(),n=u();t.exports=function(e,t){var o,a=new r,s={},i=new n;function l(e){var r=e.v===o?e.w:e.v,n=i.priority(r);if(void 0!==n){var a=t(e);a<n&&(s[r]=o,i.decrease(r,a))}}if(0===e.nodeCount())return a;e.nodes().forEach(function(e){i.add(e,1/0),a.setNode(e)}),i.decrease(e.nodes()[0],0);for(var d=!1;i.size()>0;){if(Object.hasOwn(s,o=i.removeMin()))a.setEdge(o,s[o]);else{if(d)throw Error("Input graph is not connected: "+e);d=!0}e.nodeEdges(o).forEach(l)}return a}}),E=n((e,t)=>{var r=h(),n=d();t.exports=function(e,t,o,a){return function(e,t,o,a){if(void 0===o)return r(e,t,o,a);for(var s=!1,i=e.nodes(),l=0;l<i.length;l++){for(var d=a(i[l]),c=0;c<d.length;c++){var u=d[c],h=u.v===i[l]?u.v:u.w,p=h===u.v?u.w:u.v;0>o({v:h,w:p})&&(s=!0)}if(s)return n(e,t,o,a)}return r(e,t,o,a)}(e,t,o,a||function(t){return e.outEdges(t)})}}),C=n((e,t)=>{t.exports={bellmanFord:d(),components:c(),dijkstra:h(),dijkstraAll:p(),extractPath:f(),findCycles:m(),floydWarshall:v(),isAcyclic:y(),postorder:k(),preorder:j(),prim:N(),shortestPaths:E(),reduce:b(),tarjan:g(),topsort:x()}}),S=i();t.exports={Graph:S.Graph,json:l(),alg:C(),version:S.version}}),s=o((e,t)=>{function r(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function n(e,t){if("_next"!==e&&"_prev"!==e)return t}t.exports=class{constructor(){let e={};e._next=e._prev=e,this._sentinel=e}dequeue(){let e=this._sentinel,t=e._prev;if(t!==e)return r(t),t}enqueue(e){let t=this._sentinel;e._prev&&e._next&&r(e),e._next=t._next,t._next._prev=e,t._next=e,e._prev=t}toString(){let e=[],t=this._sentinel,r=t._prev;for(;r!==t;)e.push(JSON.stringify(r,n)),r=r._prev;return"["+e.join(", ")+"]"}}}),i=o((e,t)=>{var r=a().Graph,n=s();t.exports=function(e,t){var a,s;let d,c,u,h,p;if(1>=e.nodeCount())return[];let f=(a=e,s=t||o,d=new r,c=0,u=0,a.nodes().forEach(e=>{d.setNode(e,{v:e,in:0,out:0})}),a.edges().forEach(e=>{let t=d.edge(e.v,e.w)||0,r=s(e);d.setEdge(e.v,e.w,t+r),u=Math.max(u,d.node(e.v).out+=r),c=Math.max(c,d.node(e.w).in+=r)}),h=(function(e){let t=[];for(let r=0;r<e;r++)t.push(r);return t})(u+c+3).map(()=>new n),p=c+1,d.nodes().forEach(e=>{l(h,p,d.node(e))}),{graph:d,buckets:h,zeroIdx:p});return(function(e,t,r){let n=[],o=t[t.length-1],a=t[0],s;for(;e.nodeCount();){for(;s=a.dequeue();)i(e,t,r,s);for(;s=o.dequeue();)i(e,t,r,s);if(e.nodeCount()){for(let o=t.length-2;o>0;--o)if(s=t[o].dequeue()){n=n.concat(i(e,t,r,s,!0));break}}}return n})(f.graph,f.buckets,f.zeroIdx).flatMap(t=>e.outEdges(t.v,t.w))};var o=()=>1;function i(e,t,r,n,o){let a=o?[]:void 0;return e.inEdges(n.v).forEach(n=>{let s=e.edge(n),i=e.node(n.v);o&&a.push({v:n.v,w:n.w}),i.out-=s,l(t,r,i)}),e.outEdges(n.v).forEach(n=>{let o=e.edge(n),a=n.w,s=e.node(a);s.in-=o,l(t,r,s)}),e.removeNode(n.v),a}function l(e,t,r){r.out?r.in?e[r.out-r.in+t].enqueue(r):e[e.length-1].enqueue(r):e[0].enqueue(r)}}),l=o((e,t)=>{var r=a().Graph;function n(e,t,r,n){for(var o=n;e.hasNode(o);)o=l(n);return r.dummy=t,e.setNode(o,r),o}t.exports={addBorderNode:function(e,t,r,o){let a={width:0,height:0};return arguments.length>=4&&(a.rank=r,a.order=o),n(e,"border",a,t)},addDummyNode:n,applyWithChunking:o,asNonCompoundGraph:function(e){let t=new r({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(r=>{e.children(r).length||t.setNode(r,e.node(r))}),e.edges().forEach(r=>{t.setEdge(r,e.edge(r))}),t},buildLayerMatrix:function(e){let t=d(s(e)+1).map(()=>[]);return e.nodes().forEach(r=>{let n=e.node(r),o=n.rank;void 0!==o&&(t[o][n.order]=r)}),t},intersectRect:function(e,t){let r,n,o=e.x,a=e.y,s=t.x-o,i=t.y-a,l=e.width/2,d=e.height/2;if(!s&&!i)throw Error("Not possible to find intersection inside of the rectangle");return Math.abs(i)*l>Math.abs(s)*d?(i<0&&(d=-d),r=d*s/i,n=d):(s<0&&(l=-l),r=l,n=l*i/s),{x:o+r,y:a+n}},mapValues:function(e,t){let r=t;return"string"==typeof t&&(r=e=>e[t]),Object.entries(e).reduce((e,[t,n])=>(e[t]=r(n,t),e),{})},maxRank:s,normalizeRanks:function(e){let t=o(Math.min,e.nodes().map(t=>{let r=e.node(t).rank;return void 0===r?Number.MAX_VALUE:r}));e.nodes().forEach(r=>{let n=e.node(r);Object.hasOwn(n,"rank")&&(n.rank-=t)})},notime:function(e,t){return t()},partition:function(e,t){let r={lhs:[],rhs:[]};return e.forEach(e=>{t(e)?r.lhs.push(e):r.rhs.push(e)}),r},pick:function(e,t){let r={};for(let n of t)void 0!==e[n]&&(r[n]=e[n]);return r},predecessorWeights:function(e){let t=e.nodes().map(t=>{let r={};return e.inEdges(t).forEach(t=>{r[t.v]=(r[t.v]||0)+e.edge(t).weight}),r});return c(e.nodes(),t)},range:d,removeEmptyRanks:function(e){let t=o(Math.min,e.nodes().map(t=>e.node(t).rank).filter(e=>void 0!==e)),r=[];e.nodes().forEach(n=>{let o=e.node(n).rank-t;r[o]||(r[o]=[]),r[o].push(n)});let n=0,a=e.graph().nodeRankFactor;Array.from(r).forEach((t,r)=>{void 0===t&&r%a!=0?--n:void 0!==t&&n&&t.forEach(t=>e.node(t).rank+=n)})},simplify:function(e){let t=new r().setGraph(e.graph());return e.nodes().forEach(r=>t.setNode(r,e.node(r))),e.edges().forEach(r=>{let n=t.edge(r.v,r.w)||{weight:0,minlen:1},o=e.edge(r);t.setEdge(r.v,r.w,{weight:n.weight+o.weight,minlen:Math.max(n.minlen,o.minlen)})}),t},successorWeights:function(e){let t=e.nodes().map(t=>{let r={};return e.outEdges(t).forEach(t=>{r[t.w]=(r[t.w]||0)+e.edge(t).weight}),r});return c(e.nodes(),t)},time:function(e,t){let r=Date.now();try{return t()}finally{console.log(e+" time: "+(Date.now()-r)+"ms")}},uniqueId:l,zipObject:c};function o(e,t){if(!(t.length>65535))return e.apply(null,t);{let r=function(e,t=65535){let r=[];for(let n=0;n<e.length;n+=t){let o=e.slice(n,n+t);r.push(o)}return r}(t);return e.apply(null,r.map(t=>e.apply(null,t)))}}function s(e){return o(Math.max,e.nodes().map(t=>{let r=e.node(t).rank;return void 0===r?5e-324:r}))}var i=0;function l(e){return e+""+ ++i}function d(e,t,r=1){null==t&&(t=e,e=0);let n=e=>e<t;r<0&&(n=e=>t<e);let o=[];for(let t=e;n(t);t+=r)o.push(t);return o}function c(e,t){return e.reduce((e,r,n)=>(e[r]=t[n],e),{})}}),d=o((e,t)=>{var r=i(),n=l().uniqueId;t.exports={run:function(e){var t,o;let a,s,i;("greedy"===e.graph().acyclicer?r(e,(t=e,e=>t.edge(e).weight)):(a=[],s={},i={},(o=e).nodes().forEach(function e(t){Object.hasOwn(i,t)||(i[t]=!0,s[t]=!0,o.outEdges(t).forEach(t=>{Object.hasOwn(s,t.w)?a.push(t):e(t.w)}),delete s[t])}),a)).forEach(t=>{let r=e.edge(t);e.removeEdge(t),r.forwardName=t.name,r.reversed=!0,e.setEdge(t.w,t.v,r,n("rev"))})},undo:function(e){e.edges().forEach(t=>{let r=e.edge(t);if(r.reversed){e.removeEdge(t);let n=r.forwardName;delete r.reversed,delete r.forwardName,e.setEdge(t.w,t.v,r,n)}})}}}),c=o((e,t)=>{var r=l();t.exports={run:function(e){e.graph().dummyChains=[],e.edges().forEach(t=>(function(e,t){let n,o,a,s=t.v,i=e.node(s).rank,l=t.w,d=e.node(l).rank,c=t.name,u=e.edge(t),h=u.labelRank;if(d!==i+1){for(e.removeEdge(t),a=0,++i;i<d;++a,++i)u.points=[],o={width:0,height:0,edgeLabel:u,edgeObj:t,rank:i},n=r.addDummyNode(e,"edge",o,"_d"),i===h&&(o.width=u.width,o.height=u.height,o.dummy="edge-label",o.labelpos=u.labelpos),e.setEdge(s,n,{weight:u.weight},c),0===a&&e.graph().dummyChains.push(n),s=n;e.setEdge(s,l,{weight:u.weight},c)}})(e,t))},undo:function(e){e.graph().dummyChains.forEach(t=>{let r=e.node(t),n=r.edgeLabel,o;for(e.setEdge(r.edgeObj,n);r.dummy;)o=e.successors(t)[0],e.removeNode(t),n.points.push({x:r.x,y:r.y}),"edge-label"===r.dummy&&(n.x=r.x,n.y=r.y,n.width=r.width,n.height=r.height),t=o,r=e.node(t)})}}}),u=o((e,t)=>{var{applyWithChunking:r}=l();t.exports={longestPath:function(e){var t={};e.sources().forEach(function n(o){var a=e.node(o);if(Object.hasOwn(t,o))return a.rank;t[o]=!0;var s=r(Math.min,e.outEdges(o).map(t=>null==t?1/0:n(t.w)-e.edge(t).minlen));return s===1/0&&(s=0),a.rank=s})},slack:function(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}}}),h=o((e,t)=>{var r=a().Graph,n=u().slack;t.exports=function(e){var t,o,a,s,i=new r({directed:!1}),l=e.nodes()[0],d=e.nodeCount();for(i.setNode(l,{});t=i,o=e,t.nodes().forEach(function e(r){o.nodeEdges(r).forEach(a=>{var s=a.v,i=r===s?a.w:s;t.hasNode(i)||n(o,a)||(t.setNode(i,{}),t.setEdge(r,i,{}),e(i))})}),t.nodeCount()<d;)a=function(e,t){return t.edges().reduce((r,o)=>{let a=1/0;return e.hasNode(o.v)!==e.hasNode(o.w)&&(a=n(t,o)),a<r[0]?[a,o]:r},[1/0,null])[1]}(i,e),s=i.hasNode(a.v)?n(e,a):-n(e,a),function(e,t,r){e.nodes().forEach(e=>t.node(e).rank+=r)}(i,e,s);return i}}),p=o((e,t)=>{var r=h(),n=u().slack,o=u().longestPath,s=a().alg.preorder,i=a().alg.postorder,d=l().simplify;function c(e){o(e=d(e));var t,n,a=r(e);for(g(a),p(a,e);t=m(a);)n=v(a,e,t),x(a,e,t,n)}function p(e,t){var r=i(e,e.nodes());(r=r.slice(0,r.length-1)).forEach(r=>{var n,o,a,s;return n=e,o=t,a=r,s=n.node(a).parent,void(n.edge(a,s).cutvalue=f(n,o,a))})}function f(e,t,r){var n=e.node(r).parent,o=!0,a=t.edge(r,n),s=0;return a||(o=!1,a=t.edge(n,r)),s=a.weight,t.nodeEdges(r).forEach(a=>{var i=a.v===r,l=i?a.w:a.v;if(l!==n){var d,c,u,h=i===o,p=t.edge(a).weight;if(s+=h?p:-p,d=e,c=r,u=l,d.hasEdge(c,u)){var f=e.edge(r,l).cutvalue;s+=h?-f:f}}}),s}function g(e,t){arguments.length<2&&(t=e.nodes()[0]),function e(t,r,n,o,a){var s=n,i=t.node(o);return r[o]=!0,t.neighbors(o).forEach(a=>{Object.hasOwn(r,a)||(n=e(t,r,n,a,o))}),i.low=s,i.lim=n++,a?i.parent=a:delete i.parent,n}(e,{},1,t)}function m(e){return e.edges().find(t=>e.edge(t).cutvalue<0)}function v(e,t,r){var o=r.v,a=r.w;t.hasEdge(o,a)||(o=r.w,a=r.v);var s=e.node(o),i=e.node(a),l=s,d=!1;return s.lim>i.lim&&(l=i,d=!0),t.edges().filter(t=>d===y(e,e.node(t.v),l)&&d!==y(e,e.node(t.w),l)).reduce((e,r)=>n(t,r)<n(t,e)?r:e)}function x(e,t,r,n){var o,a,i,l,d=r.v,c=r.w;e.removeEdge(d,c),e.setEdge(n.v,n.w,{}),g(e),p(e,t),o=e,a=t,i=o.nodes().find(e=>!a.node(e).parent),(l=(l=s(o,i)).slice(1)).forEach(e=>{var t=o.node(e).parent,r=a.edge(e,t),n=!1;r||(r=a.edge(t,e),n=!0),a.node(e).rank=a.node(t).rank+(n?r.minlen:-r.minlen)})}function y(e,t,r){return r.low<=t.lim&&t.lim<=r.lim}t.exports=c,c.initLowLimValues=g,c.initCutValues=p,c.calcCutValue=f,c.leaveEdge=m,c.enterEdge=v,c.exchangeEdges=x}),f=o((e,t)=>{var r=u().longestPath,n=h(),o=p();t.exports=function(e){var t,s=e.graph().ranker;if(s instanceof Function)return s(e);switch(e.graph().ranker){case"network-simplex":default:o(e);break;case"tight-tree":r(t=e),n(t);break;case"longest-path":a(e);case"none":}};var a=r}),g=o((e,t)=>{t.exports=function(e){var t;let r,n,o=(r={},n=0,(t=e).children().forEach(function e(o){let a=n;t.children(o).forEach(e),r[o]={low:a,lim:n++}}),r);e.graph().dummyChains.forEach(t=>{let r=e.node(t),n=r.edgeObj,a=function(e,t,r,n){let o=[],a=[],s=Math.min(t[r].low,t[n].low),i=Math.max(t[r].lim,t[n].lim),l,d;l=r;do o.push(l=e.parent(l));while(l&&(t[l].low>s||i>t[l].lim))for(d=l,l=n;(l=e.parent(l))!==d;)a.push(l);return{path:o.concat(a.reverse()),lca:d}}(e,o,n.v,n.w),s=a.path,i=a.lca,l=0,d=s[0],c=!0;for(;t!==n.w;){if(r=e.node(t),c){for(;(d=s[l])!==i&&e.node(d).maxRank<r.rank;)l++;d===i&&(c=!1)}if(!c){for(;l<s.length-1&&e.node(d=s[l+1]).minRank<=r.rank;)l++;d=s[l]}e.setParent(t,d),t=e.successors(t)[0]}})}}),m=o((e,t)=>{var r=l();t.exports={run:function(e){var t,n,o;let a=r.addDummyNode(e,"root",{},"_root"),s=(n={},(t=e).children().forEach(e=>(function e(r,o){var a=t.children(r);a&&a.length&&a.forEach(t=>e(t,o+1)),n[r]=o})(e,1)),n),i=Object.values(s),l=r.applyWithChunking(Math.max,i)-1,d=2*l+1;e.graph().nestingRoot=a,e.edges().forEach(t=>e.edge(t).minlen*=d);let c=(o=e).edges().reduce((e,t)=>e+o.edge(t).weight,0)+1;e.children().forEach(t=>(function e(t,n,o,a,s,i,l){let d=t.children(l);if(!d.length){l!==n&&t.setEdge(n,l,{weight:0,minlen:o});return}let c=r.addBorderNode(t,"_bt"),u=r.addBorderNode(t,"_bb"),h=t.node(l);t.setParent(c,l),h.borderTop=c,t.setParent(u,l),h.borderBottom=u,d.forEach(r=>{e(t,n,o,a,s,i,r);let d=t.node(r),h=d.borderTop?d.borderTop:r,p=d.borderBottom?d.borderBottom:r,f=d.borderTop?a:2*a,g=h!==p?1:s-i[l]+1;t.setEdge(c,h,{weight:f,minlen:g,nestingEdge:!0}),t.setEdge(p,u,{weight:f,minlen:g,nestingEdge:!0})}),t.parent(l)||t.setEdge(n,c,{weight:0,minlen:s+i[l]})})(e,a,d,c,l,s,t)),e.graph().nodeRankFactor=d},cleanup:function(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,e.edges().forEach(t=>{e.edge(t).nestingEdge&&e.removeEdge(t)})}}}),v=o((e,t)=>{var r=l();function n(e,t,n,o,a,s){let i=a[t][s-1],l=r.addDummyNode(e,"border",{width:0,height:0,rank:s,borderType:t},n);a[t][s]=l,e.setParent(l,o),i&&e.setEdge(i,l,{weight:1})}t.exports=function(e){e.children().forEach(function t(r){let o=e.children(r),a=e.node(r);if(o.length&&o.forEach(t),Object.hasOwn(a,"minRank")){a.borderLeft=[],a.borderRight=[];for(let t=a.minRank,o=a.maxRank+1;t<o;++t)n(e,"borderLeft","_bl",r,a,t),n(e,"borderRight","_br",r,a,t)}})}}),x=o((e,t)=>{function r(e){e.nodes().forEach(t=>n(e.node(t))),e.edges().forEach(t=>n(e.edge(t)))}function n(e){let t=e.width;e.width=e.height,e.height=t}function o(e){e.y=-e.y}function a(e){let t=e.x;e.x=e.y,e.y=t}t.exports={adjust:function(e){let t=e.graph().rankdir.toLowerCase();("lr"===t||"rl"===t)&&r(e)},undo:function(e){var t,n;let s=e.graph().rankdir.toLowerCase();("bt"===s||"rl"===s)&&((t=e).nodes().forEach(e=>o(t.node(e))),t.edges().forEach(e=>{let r=t.edge(e);r.points.forEach(o),Object.hasOwn(r,"y")&&o(r)})),("lr"===s||"rl"===s)&&((n=e).nodes().forEach(e=>a(n.node(e))),n.edges().forEach(e=>{let t=n.edge(e);t.points.forEach(a),Object.hasOwn(t,"x")&&a(t)}),r(e))}}}),y=o((e,t)=>{var r=l();t.exports=function(e){let t={},n=e.nodes().filter(t=>!e.children(t).length),o=n.map(t=>e.node(t).rank),a=r.applyWithChunking(Math.max,o),s=r.range(a+1).map(()=>[]);return n.sort((t,r)=>e.node(t).rank-e.node(r).rank).forEach(function r(n){t[n]||(t[n]=!0,s[e.node(n).rank].push(n),e.successors(n).forEach(r))}),s}}),b=o((e,t)=>{var r=l().zipObject;t.exports=function(e,t){let n=0;for(let o=1;o<t.length;++o)n+=function(e,t,n){let o=r(n,n.map((e,t)=>t)),a=t.flatMap(t=>e.outEdges(t).map(t=>({pos:o[t.w],weight:e.edge(t).weight})).sort((e,t)=>e.pos-t.pos)),s=1;for(;s<n.length;)s<<=1;let i=2*s-1;s-=1;let l=Array(i).fill(0),d=0;return a.forEach(e=>{let t=e.pos+s;l[t]+=e.weight;let r=0;for(;t>0;)t%2&&(r+=l[t+1]),t=t-1>>1,l[t]+=e.weight;d+=e.weight*r}),d}(e,t[o-1],t[o]);return n}}),w=o((e,t)=>{t.exports=function(e,t=[]){return t.map(t=>{let r=e.inEdges(t);if(!r.length)return{v:t};{let n=r.reduce((t,r)=>{let n=e.edge(r),o=e.node(r.v);return{sum:t.sum+n.weight*o.order,weight:t.weight+n.weight}},{sum:0,weight:0});return{v:t,barycenter:n.sum/n.weight,weight:n.weight}}})}}),k=o((e,t)=>{var r=l();t.exports=function(e,t){let n={};return e.forEach((e,t)=>{let r=n[e.v]={indegree:0,in:[],out:[],vs:[e.v],i:t};void 0!==e.barycenter&&(r.barycenter=e.barycenter,r.weight=e.weight)}),t.edges().forEach(e=>{let t=n[e.v],r=n[e.w];void 0!==t&&void 0!==r&&(r.indegree++,t.out.push(n[e.w]))}),function(e){let t=[];for(;e.length;){let r=e.pop();t.push(r),r.in.reverse().forEach(function(e){return t=>{t.merged||(void 0===t.barycenter||void 0===e.barycenter||t.barycenter>=e.barycenter)&&function(e,t){let r=0,n=0;e.weight&&(r+=e.barycenter*e.weight,n+=e.weight),t.weight&&(r+=t.barycenter*t.weight,n+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=r/n,e.weight=n,e.i=Math.min(t.i,e.i),t.merged=!0}(e,t)}}(r)),r.out.forEach(function(t){return r=>{r.in.push(t),0==--r.indegree&&e.push(r)}}(r))}return t.filter(e=>!e.merged).map(e=>r.pick(e,["vs","i","barycenter","weight"]))}(Object.values(n).filter(e=>!e.indegree))}}),j=o((e,t)=>{var r=l();function n(e,t,r){let n;for(;t.length&&(n=t[t.length-1]).i<=r;)t.pop(),e.push(n.vs),r++;return r}t.exports=function(e,t){var o;let a=r.partition(e,e=>Object.hasOwn(e,"barycenter")),s=a.lhs,i=a.rhs.sort((e,t)=>t.i-e.i),l=[],d=0,c=0,u=0;s.sort((o=!!t,(e,t)=>e.barycenter<t.barycenter?-1:e.barycenter>t.barycenter?1:o?t.i-e.i:e.i-t.i)),u=n(l,i,u),s.forEach(e=>{u+=e.vs.length,l.push(e.vs),d+=e.barycenter*e.weight,c+=e.weight,u=n(l,i,u)});let h={vs:l.flat(!0)};return c&&(h.barycenter=d/c,h.weight=c),h}}),N=o((e,t)=>{var r=w(),n=k(),o=j();t.exports=function e(t,a,s,i){var l,d;let c=t.children(a),u=t.node(a),h=u?u.borderLeft:void 0,p=u?u.borderRight:void 0,f={};h&&(c=c.filter(e=>e!==h&&e!==p));let g=r(t,c);g.forEach(r=>{if(t.children(r.v).length){var n,o;let a=e(t,r.v,s,i);f[r.v]=a,Object.hasOwn(a,"barycenter")&&(n=r,o=a,void 0!==n.barycenter?(n.barycenter=(n.barycenter*n.weight+o.barycenter*o.weight)/(n.weight+o.weight),n.weight+=o.weight):(n.barycenter=o.barycenter,n.weight=o.weight))}});let m=n(g,s);l=m,d=f,l.forEach(e=>{e.vs=e.vs.flatMap(e=>d[e]?d[e].vs:e)});let v=o(m,i);if(h&&(v.vs=[h,v.vs,p].flat(!0),t.predecessors(h).length)){let e=t.node(t.predecessors(h)[0]),r=t.node(t.predecessors(p)[0]);Object.hasOwn(v,"barycenter")||(v.barycenter=0,v.weight=0),v.barycenter=(v.barycenter*v.weight+e.order+r.order)/(v.weight+2),v.weight+=2}return v}}),E=o((e,t)=>{var r=a().Graph,n=l();t.exports=function(e,t,o,a){a||(a=e.nodes());let s=function(e){for(var t;e.hasNode(t=n.uniqueId("_root")););return t}(e),i=new r({compound:!0}).setGraph({root:s}).setDefaultNodeLabel(t=>e.node(t));return a.forEach(r=>{let n=e.node(r),a=e.parent(r);(n.rank===t||n.minRank<=t&&t<=n.maxRank)&&(i.setNode(r),i.setParent(r,a||s),e[o](r).forEach(t=>{let n=t.v===r?t.w:t.v,o=i.edge(n,r),a=void 0!==o?o.weight:0;i.setEdge(n,r,{weight:e.edge(t).weight+a})}),Object.hasOwn(n,"minRank")&&i.setNode(r,{borderLeft:n.borderLeft[t],borderRight:n.borderRight[t]}))}),i}}),C=o((e,t)=>{t.exports=function(e,t,r){let n={},o;r.forEach(r=>{let a=e.parent(r),s,i;for(;a;){if((s=e.parent(a))?(i=n[s],n[s]=a):(i=o,o=a),i&&i!==a)return void t.setEdge(i,a);a=s}})}}),S=o((e,t)=>{var r=y(),n=b(),o=N(),s=E(),i=C(),d=a().Graph,c=l();function u(e,t,r){let n=new Map,o=(e,t)=>{n.has(e)||n.set(e,[]),n.get(e).push(t)};for(let t of e.nodes()){let r=e.node(t);if("number"==typeof r.rank&&o(r.rank,t),"number"==typeof r.minRank&&"number"==typeof r.maxRank)for(let e=r.minRank;e<=r.maxRank;e++)e!==r.rank&&o(e,t)}return t.map(function(t){return s(e,t,r,n.get(t)||[])})}function h(e,t){Object.values(t).forEach(t=>t.forEach((t,r)=>e.node(t).order=r))}t.exports=function e(t,a={}){if("function"==typeof a.customOrder)return void a.customOrder(t,e);let s=c.maxRank(t),l=u(t,c.range(1,s+1),"inEdges"),p=u(t,c.range(s-1,-1,-1),"outEdges"),f=r(t);if(h(t,f),a.disableOptimalOrderHeuristic)return;let g=1/0,m,v=a.constraints||[];for(let e=0,r=0;r<4;++e,++r){(function(e,t,r){let n=new d;e.forEach(function(e){r.forEach(e=>n.setEdge(e.left,e.right));let a=e.graph().root,s=o(e,a,n,t);s.vs.forEach((t,r)=>e.node(t).order=r),i(e,n,s.vs)})})(e%2?l:p,e%4>=2,v),f=c.buildLayerMatrix(t);let a=n(t,f);a<g?(r=0,m=Object.assign({},f),g=a):a===g&&(m=structuredClone(f))}h(t,m)}}),_=o((e,t)=>{var r=a().Graph,n=l();function o(e,t){let r={};return t.length&&t.reduce(function(t,n){let o=0,a=0,s=t.length,l=n[n.length-1];return n.forEach((t,d)=>{let c=function(e,t){if(e.node(t).dummy)return e.predecessors(t).find(t=>e.node(t).dummy)}(e,t),u=c?e.node(c).order:s;(c||t===l)&&(n.slice(a,d+1).forEach(t=>{e.predecessors(t).forEach(n=>{let a=e.node(n),s=a.order;(s<o||u<s)&&!(a.dummy&&e.node(t).dummy)&&i(r,n,t)})}),a=d+1,o=u)}),n}),r}function s(e,t){let r={};function o(t,o,a,s,l){let d;n.range(o,a).forEach(n=>{d=t[n],e.node(d).dummy&&e.predecessors(d).forEach(t=>{let n=e.node(t);n.dummy&&(n.order<s||n.order>l)&&i(r,t,d)})})}return t.length&&t.reduce(function(t,r){let n=-1,a,s=0;return r.forEach((i,l)=>{if("border"===e.node(i).dummy){let t=e.predecessors(i);t.length&&(a=e.node(t[0]).order,o(r,s,l,n,a),s=l,n=a)}o(r,s,r.length,a,t.length)}),r}),r}function i(e,t,r){if(t>r){let e=t;t=r,r=e}let n=e[t];n||(e[t]=n={}),n[r]=!0}function d(e,t,r){if(t>r){let e=t;t=r,r=e}return!!e[t]&&Object.hasOwn(e[t],r)}function c(e,t,r,n){let o={},a={},s={};return t.forEach(e=>{e.forEach((e,t)=>{o[e]=e,a[e]=e,s[e]=t})}),t.forEach(e=>{let t=-1;e.forEach(e=>{let i=n(e);if(i.length){let n=((i=i.sort((e,t)=>s[e]-s[t])).length-1)/2;for(let l=Math.floor(n),c=Math.ceil(n);l<=c;++l){let n=i[l];a[e]===e&&t<s[n]&&!d(r,e,n)&&(a[n]=e,a[e]=o[e]=o[n],t=s[n])}}})}),{root:o,align:a}}function u(e,t,n,o,a){var s,i,l,d,c,u,h;let p,f,g,m={},v=(s=e,i=t,l=n,d=a,p=new r,g=(c=(f=s.graph()).nodesep,u=f.edgesep,h=d,(e,t,r)=>{let n=e.node(t),o=e.node(r),a,s;if(a=0+n.width/2,Object.hasOwn(n,"labelpos"))switch(n.labelpos.toLowerCase()){case"l":s=-n.width/2;break;case"r":s=n.width/2}if(s&&(a+=h?s:-s),s=0,a+=(n.dummy?u:c)/2,a+=(o.dummy?u:c)/2,a+=o.width/2,Object.hasOwn(o,"labelpos"))switch(o.labelpos.toLowerCase()){case"l":s=o.width/2;break;case"r":s=-o.width/2}return s&&(a+=h?s:-s),s=0,a}),i.forEach(e=>{let t;e.forEach(e=>{let r=l[e];if(p.setNode(r),t){var n=l[t],o=p.edge(n,r);p.setEdge(n,r,Math.max(g(s,e,t),o||0))}t=e})}),p),x=a?"borderLeft":"borderRight";function y(e,t){let r=v.nodes().slice(),n={},o=r.pop();for(;o;){if(n[o])e(o);else for(let e of(n[o]=!0,r.push(o),t(o)))r.push(e);o=r.pop()}}return y(function(e){m[e]=v.inEdges(e).reduce((e,t)=>Math.max(e,m[t.v]+v.edge(t)),0)},v.predecessors.bind(v)),y(function(t){let r=v.outEdges(t).reduce((e,t)=>Math.min(e,m[t.w]-v.edge(t)),1/0),n=e.node(t);r!==1/0&&n.borderType!==x&&(m[t]=Math.max(m[t],r))},v.successors.bind(v)),Object.keys(o).forEach(e=>m[e]=m[n[e]]),m}function h(e,t){return Object.values(t).reduce((t,r)=>{let n=-1/0,o=1/0;Object.entries(r).forEach(([t,r])=>{var a,s;let i=(a=e,s=t,a.node(s).width/2);n=Math.max(r+i,n),o=Math.min(r-i,o)});let a=n-o;return a<t[0]&&(t=[a,r]),t},[1/0,null])[1]}function p(e,t){let r=Object.values(t),o=n.applyWithChunking(Math.min,r),a=n.applyWithChunking(Math.max,r);["u","d"].forEach(r=>{["l","r"].forEach(s=>{let i=r+s,l=e[i];if(l===t)return;let d=Object.values(l),c=o-n.applyWithChunking(Math.min,d);"l"!==s&&(c=a-n.applyWithChunking(Math.max,d)),c&&(e[i]=n.mapValues(l,e=>e+c))})})}function f(e,t){return n.mapValues(e.ul,(r,n)=>{if(t)return e[t.toLowerCase()][n];{let t=Object.values(e).map(e=>e[n]).sort((e,t)=>e-t);return(t[1]+t[2])/2}})}t.exports={positionX:function(e){let t=n.buildLayerMatrix(e),r=Object.assign(o(e,t),s(e,t)),a={},i;["u","d"].forEach(o=>{i="u"===o?t:Object.values(t).reverse(),["l","r"].forEach(t=>{"r"===t&&(i=i.map(e=>Object.values(e).reverse()));let s=("u"===o?e.predecessors:e.successors).bind(e),l=c(e,i,r,s),d=u(e,i,l.root,l.align,"r"===t);"r"===t&&(d=n.mapValues(d,e=>-e)),a[o+t]=d})});let l=h(e,a);return p(a,l),f(a,e.graph().align)},findType1Conflicts:o,findType2Conflicts:s,addConflict:i,hasConflict:d,verticalAlignment:c,horizontalCompaction:u,alignCoordinates:p,findSmallestWidthAlignment:h,balance:f}}),D=o((e,t)=>{var r=l(),n=_().positionX;t.exports=function(e){var t;let o,a,s,i;t=e=r.asNonCompoundGraph(e),o=r.buildLayerMatrix(t),a=t.graph().ranksep,s=t.graph().rankalign,i=0,o.forEach(e=>{let r=e.reduce((e,r)=>{let n=t.node(r).height;return e>n?e:n},0);e.forEach(e=>{let n=t.node(e);"top"===s?n.y=i+n.height/2:"bottom"===s?n.y=i+r-n.height/2:n.y=i+r/2}),i+=r+a}),Object.entries(n(e)).forEach(([t,r])=>e.node(t).x=r)}}),M=o((e,t)=>{var r=d(),n=c(),o=f(),s=l().normalizeRanks,i=g(),u=l().removeEmptyRanks,h=m(),p=v(),y=x(),b=S(),w=D(),k=l(),j=a().Graph;t.exports=function(e,t={}){let a=t.debugTiming?k.time:k.notime;return a("layout",()=>{let l=a(" buildLayoutGraph",()=>{var t;let r,n;return t=e,r=new j({multigraph:!0,compound:!0}),n=F(t.graph()),r.setGraph(Object.assign({},E,I(n,N),k.pick(n,C))),t.nodes().forEach(e=>{let n=I(F(t.node(e)),_);Object.keys(M).forEach(e=>{void 0===n[e]&&(n[e]=M[e])}),r.setNode(e,n),r.setParent(e,t.parent(e))}),t.edges().forEach(e=>{let n=F(t.edge(e));r.setEdge(e,Object.assign({},P,I(n,O),k.pick(n,R)))}),r});return a(" runLayout",()=>{var e,d,c;return e=l,d=a,c=t,void(d(" makeSpaceForEdgeLabels",()=>{var t;let r;return r=(t=e).graph(),void(r.ranksep/=2,t.edges().forEach(e=>{let n=t.edge(e);n.minlen*=2,"c"!==n.labelpos.toLowerCase()&&("TB"===r.rankdir||"BT"===r.rankdir?n.width+=n.labeloffset:n.height+=n.labeloffset)}))}),d(" removeSelfEdges",()=>{var t;(t=e).edges().forEach(e=>{if(e.v===e.w){var r=t.node(e.v);r.selfEdges||(r.selfEdges=[]),r.selfEdges.push({e:e,label:t.edge(e)}),t.removeEdge(e)}})}),d(" acyclic",()=>r.run(e)),d(" nestingGraph.run",()=>h.run(e)),d(" rank",()=>o(k.asNonCompoundGraph(e))),d(" injectEdgeLabelProxies",()=>{var t;(t=e).edges().forEach(e=>{let r=t.edge(e);if(r.width&&r.height){let r=t.node(e.v),n={rank:(t.node(e.w).rank-r.rank)/2+r.rank,e:e};k.addDummyNode(t,"edge-proxy",n,"_ep")}})}),d(" removeEmptyRanks",()=>u(e)),d(" nestingGraph.cleanup",()=>h.cleanup(e)),d(" normalizeRanks",()=>s(e)),d(" assignRankMinMax",()=>{var t;let r;return r=0,void((t=e).nodes().forEach(e=>{let n=t.node(e);n.borderTop&&(n.minRank=t.node(n.borderTop).rank,n.maxRank=t.node(n.borderBottom).rank,r=Math.max(r,n.maxRank))}),t.graph().maxRank=r)}),d(" removeEdgeLabelProxies",()=>{var t;(t=e).nodes().forEach(e=>{let r=t.node(e);"edge-proxy"===r.dummy&&(t.edge(r.e).labelRank=r.rank,t.removeNode(e))})}),d(" normalize.run",()=>n.run(e)),d(" parentDummyChains",()=>i(e)),d(" addBorderSegments",()=>p(e)),d(" order",()=>b(e,c)),d(" insertSelfEdges",()=>{var t;return t=e,void k.buildLayerMatrix(t).forEach(e=>{var r=0;e.forEach((e,n)=>{var o=t.node(e);o.order=n+r,(o.selfEdges||[]).forEach(e=>{k.addDummyNode(t,"selfedge",{width:e.label.width,height:e.label.height,rank:o.rank,order:n+ ++r,e:e.e,label:e.label},"_se")}),delete o.selfEdges})})}),d(" adjustCoordinateSystem",()=>y.adjust(e)),d(" position",()=>w(e)),d(" positionSelfEdges",()=>{var t;(t=e).nodes().forEach(e=>{var r=t.node(e);if("selfedge"===r.dummy){var n=t.node(r.e.v),o=n.x+n.width/2,a=n.y,s=r.x-o,i=n.height/2;t.setEdge(r.e,r.label),t.removeNode(e),r.label.points=[{x:o+2*s/3,y:a-i},{x:o+5*s/6,y:a-i},{x:o+s,y:a},{x:o+5*s/6,y:a+i},{x:o+2*s/3,y:a+i}],r.label.x=r.x,r.label.y=r.y}})}),d(" removeBorderNodes",()=>{var t;(t=e).nodes().forEach(e=>{if(t.children(e).length){let r=t.node(e),n=t.node(r.borderTop),o=t.node(r.borderBottom),a=t.node(r.borderLeft[r.borderLeft.length-1]),s=t.node(r.borderRight[r.borderRight.length-1]);r.width=Math.abs(s.x-a.x),r.height=Math.abs(o.y-n.y),r.x=a.x+r.width/2,r.y=n.y+r.height/2}}),t.nodes().forEach(e=>{"border"===t.node(e).dummy&&t.removeNode(e)})}),d(" normalize.undo",()=>n.undo(e)),d(" fixupEdgeLabelCoords",()=>{var t;(t=e).edges().forEach(e=>{let r=t.edge(e);if(Object.hasOwn(r,"x"))switch(("l"===r.labelpos||"r"===r.labelpos)&&(r.width-=r.labeloffset),r.labelpos){case"l":r.x-=r.width/2+r.labeloffset;break;case"r":r.x+=r.width/2+r.labeloffset}})}),d(" undoCoordinateSystem",()=>y.undo(e)),d(" translateGraph",()=>(function(e){let t=1/0,r=0,n=1/0,o=0,a=e.graph(),s=a.marginx||0,i=a.marginy||0;function l(e){let a=e.x,s=e.y,i=e.width,l=e.height;t=Math.min(t,a-i/2),r=Math.max(r,a+i/2),n=Math.min(n,s-l/2),o=Math.max(o,s+l/2)}e.nodes().forEach(t=>l(e.node(t))),e.edges().forEach(t=>{let r=e.edge(t);Object.hasOwn(r,"x")&&l(r)}),t-=s,n-=i,e.nodes().forEach(r=>{let o=e.node(r);o.x-=t,o.y-=n}),e.edges().forEach(r=>{let o=e.edge(r);o.points.forEach(e=>{e.x-=t,e.y-=n}),Object.hasOwn(o,"x")&&(o.x-=t),Object.hasOwn(o,"y")&&(o.y-=n)}),a.width=r-t+s,a.height=o-n+i})(e)),d(" assignNodeIntersects",()=>{var t;(t=e).edges().forEach(e=>{let r=t.edge(e),n=t.node(e.v),o=t.node(e.w),a,s;r.points?(a=r.points[0],s=r.points[r.points.length-1]):(r.points=[],a=o,s=n),r.points.unshift(k.intersectRect(n,a)),r.points.push(k.intersectRect(o,s))})}),d(" reversePoints",()=>{var t;(t=e).edges().forEach(e=>{let r=t.edge(e);r.reversed&&r.points.reverse()})}),d(" acyclic.undo",()=>r.undo(e)))}),a(" updateInputGraph",()=>{var t,r;return t=e,r=l,void(t.nodes().forEach(e=>{let n=t.node(e),o=r.node(e);n&&(n.x=o.x,n.y=o.y,n.order=o.order,n.rank=o.rank,r.children(e).length&&(n.width=o.width,n.height=o.height))}),t.edges().forEach(e=>{let n=t.edge(e),o=r.edge(e);n.points=o.points,Object.hasOwn(o,"x")&&(n.x=o.x,n.y=o.y)}),t.graph().width=r.graph().width,t.graph().height=r.graph().height)}),l})};var N=["nodesep","edgesep","ranksep","marginx","marginy"],E={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb",rankalign:"center"},C=["acyclicer","ranker","rankdir","align","rankalign"],_=["width","height","rank"],M={width:0,height:0},O=["minlen","weight","width","height","labeloffset"],P={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},R=["labelpos"];function I(e,t){return k.mapValues(k.pick(e,t),Number)}function F(e){var t={};return e&&Object.entries(e).forEach(([e,r])=>{"string"==typeof e&&(e=e.toLowerCase()),t[e]=r}),t}}),O=o((e,t)=>{var r=l(),n=a().Graph;t.exports={debugOrdering:function(e){let t=r.buildLayerMatrix(e),o=new n({compound:!0,multigraph:!0}).setGraph({});return e.nodes().forEach(t=>{o.setNode(t,{label:t}),o.setParent(t,"layer"+e.node(t).rank)}),e.edges().forEach(e=>o.setEdge(e.v,e.w,{},e.name)),t.forEach((e,t)=>{o.setNode("layer"+t,{rank:"same"}),e.reduce((e,t)=>(o.setEdge(e,t,{style:"invis"}),t))}),o}}}),P=o((e,t)=>{t.exports="2.0.4"});let R=o((e,t)=>{t.exports={graphlib:a(),layout:M(),debug:O(),util:{time:l().time,notime:l().notime},version:P()}})(),I={direction:"LR",ranksep:200,nodesep:48};function F(e="ltr"){return{...I,direction:"rtl"===e?"RL":"LR"}}let L={featureNode:{width:388,height:140},repositoryNode:{width:400,height:140},applicationNode:{width:416,height:300}};function T(e,t){let r=e.data;return r&&"number"==typeof r.width&&"number"==typeof r.height?{width:r.width,height:r.height}:L[e.type??""]??t}function A(e,t,r={}){let{direction:n="TB",nodeSize:o={width:172,height:36},ranksep:a=80,nodesep:s=30}=r;if(0===e.length)return{nodes:[],edges:[]};let i=new R.graphlib.Graph({multigraph:!0});i.setDefaultEdgeLabel(()=>({})),i.setGraph({rankdir:n,ranksep:a,nodesep:s});let l=new Set;for(let e of t)l.add(e.source),l.add(e.target);let d=e.filter(e=>l.has(e.id)),c=e.filter(e=>!l.has(e.id));for(let e of d){let t=T(e,o);i.setNode(e.id,{width:t.width,height:t.height})}for(let e of t)i.hasNode(e.source)&&i.hasNode(e.target)&&i.setEdge(e.source,e.target,{},e.id);R.layout(i);let{targetPosition:u,sourcePosition:h}=function(e){switch(e){case"LR":return{targetPosition:"left",sourcePosition:"right"};case"RL":return{targetPosition:"right",sourcePosition:"left"};case"BT":return{targetPosition:"bottom",sourcePosition:"top"};default:return{targetPosition:"top",sourcePosition:"bottom"}}}(n),p="LR"===n||"RL"===n,f=new Map;for(let e of d){let t=i.node(e.id),r=T(e,o);f.set(e.id,{cx:t.x,cy:t.y,w:r.width,h:r.height})}let g=0;for(let e of f.values()){g=p?e.cx:e.cy;break}for(let e of c){let t=T(e,o);f.set(e.id,{cx:p?g:0,cy:p?0:g,w:t.width,h:t.height})}let m=new Map;for(let e of t)f.has(e.source)&&f.has(e.target)&&(m.has(e.source)||m.set(e.source,[]),m.get(e.source).push(e.target));let v=new Map;for(let t=0;t<e.length;t++)v.set(e[t].id,t);for(let[,e]of m)e.sort((e,t)=>(v.get(e)??0)-(v.get(t)??0));let x=new Set;for(let e of m.values())for(let t of e)x.add(t);let y=[...[...l].filter(e=>f.has(e)&&!x.has(e)),...c.map(e=>e.id)];y.sort((e,t)=>(v.get(e)??0)-(v.get(t)??0));let b=new Map;for(let e of y)!function e(t){if(b.has(t))return b.get(t);let r=f.get(t),n=p?r.h:r.w,o=m.get(t);if(!o||0===o.length)return b.set(t,n),n;let a=0;for(let t of o)a+=e(t);let i=Math.max(n,a+=(o.length-1)*s);return b.set(t,i),i}(e);let w=0;for(let e of y){let t=b.get(e)??0;!function e(t,r){let n=f.get(t);p?n.cy=r:n.cx=r;let o=m.get(t);if(!o||0===o.length)return;let a=0;for(let e of o)a+=b.get(e)??0;let i=r-(a+=(o.length-1)*s)/2;for(let t of o){let r=b.get(t)??0;e(t,i+r/2),i+=r+s}}(e,w+t/2),w+=t+s}let k=[];for(let t of e){let e=f.get(t.id);e&&k.push({...t,targetPosition:u,sourcePosition:h,position:{x:e.cx-e.w/2,y:e.cy-e.h/2}})}return{nodes:k,edges:[...t]}}var $=e.i(508893);let B=(0,$.createServerReference)("407d6cc5e3c1b63788f6895294bfa6e220c2db5e3d",$.callServer,void 0,$.findSourceMapURL,"archiveFeature"),z=(0,$.createServerReference)("78695170351180afd4c389fd260300eaa50553dff4",$.callServer,void 0,$.findSourceMapURL,"deleteFeature");var G=e.i(336548),W=e.i(217846),q=e.i(965154);let U=(0,$.createServerReference)("40752429db6c2affbe28371b2d29f2df6d2f82ce8f",$.callServer,void 0,$.findSourceMapURL,"unarchiveFeature");var H=e.i(444773);let V=(0,$.createServerReference)("60e55dd72100553b711e44566fae95c8eca7f9f4b0",$.callServer,void 0,$.findSourceMapURL,"deleteRepository");var X=e.i(273932);let Y=(0,$.createServerReference)("403c68c0fb3149fa66e2f1bf3cdafce602c03d178a",$.callServer,void 0,$.findSourceMapURL,"getFeatureMetadata");var J=e.i(648034),K=e.i(873504),Z=e.i(808361),Q=e.i(118354),ee=e.i(672971),et=e.i(799045);e.i(541001);var er=e.i(64780);function en(e,t){let r=new Map;for(let e of t)"dependencyEdge"===e.type&&r.set(e.target,e.source);let n=new Map,o=new Map,a=new Map;for(let t of e)"featureNode"===t.type?n.set(t.id,{nodeId:t.id,data:t.data,parentNodeId:r.get(t.id)}):"repositoryNode"===t.type?o.set(t.id,{nodeId:t.id,data:t.data}):"applicationNode"===t.type&&a.set(t.id,{nodeId:t.id,data:t.data});return{featureMap:n,repoMap:o,applicationMap:a}}function eo(e,t){return(void 0===t.state||t.state===e.state)&&(void 0===t.lifecycle||t.lifecycle===e.lifecycle)&&(void 0===t.name||t.name===e.name)&&(void 0===t.description||t.description===e.description)}function ea(e,t){if(e.size!==t.size)return!1;for(let[r,n]of e){let e=t.get(r);if(!e||n.parentNodeId!==e.parentNodeId||n.data!==e.data&&JSON.stringify(n.data)!==JSON.stringify(e.data))return!1}return!0}let es=(0,Q.createLogger)("[Polling]"),ei=0,el=0;function ed(e,o){let a=(0,r.useRouter)(),s=(0,Z.useSoundAction)("delete"),i=(0,Z.useSoundAction)("create"),[l,d]=(0,t.useState)(!1),{nodes:c,edges:u,reconcile:h,updateFeature:p,addPendingFeature:f,removeFeature:g,restoreFeature:m,addRepository:v,removeRepository:x,replaceRepository:y,getFeatureRepositoryPath:b,getRepositoryData:w,getRepoMapSize:k,addApplication:j,removeApplication:N,setCallbacks:E,beginMutation:C,endMutation:S,isMutating:_}=function(e,r,n=!1){let{i18n:o}=(0,er.useTranslation)(),a=(0,t.useMemo)(()=>F(o.dir()),[o]),s=(0,t.useMemo)(()=>en(e,r),[]),[i,l]=(0,t.useState)(s.featureMap),[d,c]=(0,t.useState)(s.repoMap),[u,h]=(0,t.useState)(s.applicationMap),[p,f]=(0,t.useState)(new Map),g=(0,t.useRef)(new Map),m=(0,t.useRef)(new Set),v=(0,t.useRef)(0),x=(0,t.useRef)(new Set),y=(0,t.useRef)(new Set),b=(0,t.useRef)(new Set),w=(0,t.useRef)({}),k=(0,t.useMemo)(()=>({onNodeAction:e=>w.current.onNodeAction?.(e),onNodeSettings:e=>w.current.onNodeSettings?.(e),onFeatureDelete:(e,t,r,n)=>w.current.onFeatureDelete?.(e,t,r,n),onRepositoryAdd:e=>w.current.onRepositoryAdd?.(e),onRepositoryClick:e=>w.current.onRepositoryClick?.(e),onRepositoryDelete:e=>w.current.onRepositoryDelete?.(e),onRetryFeature:e=>w.current.onRetryFeature?.(e),onStartFeature:e=>w.current.onStartFeature?.(e),onArchiveFeature:e=>w.current.onArchiveFeature?.(e),onUnarchiveFeature:e=>w.current.onUnarchiveFeature?.(e),onApplicationClick:e=>w.current.onApplicationClick?.(e),onApplicationDelete:e=>w.current.onApplicationDelete?.(e)}),[]),j=(0,t.useRef)(i);j.current=i;let N=(0,t.useRef)(d);N.current=d;let E=(0,t.useMemo)(()=>{if(n)return i;let e=new Map;for(let[t,r]of i)"archived"!==r.data.state&&e.set(t,r);return e.size===i.size?i:e},[i,n]),C=(0,t.useMemo)(()=>(function(e,t,r,n,o){let a=[],s=[],i=e=>e.replace(/\\/g,"/"),l=new Map;for(let[e,r]of t)r.data.repositoryPath&&l.set(i(r.data.repositoryPath),e);let d=new Map;for(let[e,r]of[...t.entries()].sort((e,t)=>{let r=e[1].data.createdAt,n=t[1].data.createdAt;return("number"!=typeof r||Number.isNaN(r)?1/0:r)-("number"!=typeof n||Number.isNaN(n)?1/0:n)})){let t={...r.data,...n?.onRepositoryAdd&&{onAdd:()=>n.onRepositoryAdd(e)},...n?.onRepositoryClick&&{onClick:()=>n.onRepositoryClick(e)},...n?.onRepositoryDelete&&{onDelete:n.onRepositoryDelete}};a.push({id:e,type:"repositoryNode",position:{x:0,y:0},data:t})}for(let[t,o,c]of[...[...e.entries()].map(([e,t])=>[e,t,!1]),...[...r.entries()].filter(([t])=>!e.has(t)).map(([e,t])=>[e,t,!0])]){let u="creating"===o.data.state||c,h={...o.data,...!u&&n?.onNodeAction&&{onAction:()=>n.onNodeAction(t)},...!u&&n?.onNodeSettings&&{onSettings:()=>n.onNodeSettings(t)},...!u&&n?.onFeatureDelete&&{onDelete:n.onFeatureDelete},...!u&&"error"===o.data.state&&n?.onRetryFeature&&{onRetry:n.onRetryFeature},...!u&&"pending"===o.data.state&&n?.onStartFeature&&{onStart:n.onStartFeature},...!u&&("running"===o.data.state||"action-required"===o.data.state)&&n?.onStopFeature&&{onStop:n.onStopFeature},...!u&&"archived"!==o.data.state&&"deleting"!==o.data.state&&n?.onArchiveFeature&&{onArchive:n.onArchiveFeature},...!u&&"archived"===o.data.state&&n?.onUnarchiveFeature&&{onUnarchive:n.onUnarchiveFeature}};if(a.push({id:t,type:"featureNode",position:{x:0,y:0},data:h}),o.parentNodeId&&(e.has(o.parentNodeId)||r.has(o.parentNodeId)))s.push({id:`dep-${o.parentNodeId}-${t}`,source:o.parentNodeId,target:t,type:"dependencyEdge"});else{let e=i(o.data.repositoryPath),r=l.get(e)??function(e){if(d.has(e))return d.get(e);let t=`virtual-repo-${e}`,r=e.split("/").filter(Boolean).at(-1)??e;return a.push({id:t,type:"repositoryNode",position:{x:0,y:0},data:{name:r,repositoryPath:e}}),d.set(e,t),t}(e);s.push({id:`edge-${r}-${t}`,source:r,target:t,style:{strokeDasharray:"5 5"}})}}if(o)for(let[e,t]of o){let r={...t.data,...n?.onApplicationClick&&{onClick:()=>n.onApplicationClick(t.data.id)},...n?.onApplicationDelete&&{onDelete:n.onApplicationDelete}};if(a.push({id:e,type:"applicationNode",position:{x:0,y:0},data:r}),t.data.repositoryPath){let r=t.data.repositoryPath.replace(/\\/g,"/"),n=l.get(r);n&&s.push({id:`edge-${e}-${n}`,source:e,target:n,style:{strokeDasharray:"5 5"}})}}let c=new Set;for(let e of s)"dependencyEdge"===e.type&&c.add(e.source);let u=s.length>0;for(let e of a){let t=e.data;t.showHandles=u,"featureNode"===e.type&&(t.hasChildren=c.has(e.id))}return{nodes:a,edges:s}})(E,d,p,k,u),[E,d,p,k,u]),S=(0,t.useRef)({key:"",positions:new Map}),{nodes:_,edges:D}=(0,t.useMemo)(()=>{let e=C.nodes.map(e=>e.id).sort().join(","),t=C.edges.map(e=>`${e.source}-${e.target}`).sort().join(","),r=`${e}|${t}|${a.direction}`;if(r!==S.current.key){let e=A(C.nodes,C.edges,a),t=new Map;for(let r of e.nodes)t.set(r.id,{position:r.position,targetPosition:r.targetPosition,sourcePosition:r.sourcePosition});let n=S.current.positions;if(n.size>0){let r=0,o=0;for(let[e,a]of t){let t=n.get(e);if(t){r=t.position.x-a.position.x,o=t.position.y-a.position.y;break}}if(0!==r||0!==o){for(let e of t.values())e.position={x:e.position.x+r,y:e.position.y+o};for(let t of e.nodes)t.position={x:t.position.x+r,y:t.position.y+o}}}return S.current={key:r,positions:t},e}let{positions:n}=S.current;return{nodes:C.nodes.map(e=>{let t=n.get(e.id);return t?{...e,...t}:e}),edges:C.edges}},[C,a]),M=(0,t.useCallback)((e,t)=>{if(v.current>0)return;let{featureMap:r,repoMap:n}=en(e,t),o=new Set([...r.values()].map(e=>`${e.data.name}\0${e.data.repositoryPath}`));l(e=>{let t=[...e.entries()].filter(([,e])=>"creating"===e.data.state),n=new Map(r);for(let[e,r]of t){let t=`${r.data.name}\0${r.data.repositoryPath}`;o.has(t)||n.set(e,r)}let a=new Set;for(let[t,r]of e)"deleting"===r.data.state&&(n.has(t)?n.set(t,{...n.get(t),data:{...n.get(t).data,state:"deleting"}}):y.current.has(t)||(n.set(t,r),a.add(t)));for(let[e,t]of(y.current=a,g.current)){let r=n.get(e);r&&(n.set(e,{...r,data:{...r.data,...t}}),g.current.delete(e))}return ea(e,n)?e:n}),f(e=>{if(0===e.size)return e;let t=!1,r=new Map(e);for(let[n,a]of e){let e=`${a.data.name}\0${a.data.repositoryPath}`;o.has(e)&&(r.delete(n),t=!0)}return t?r:e}),c(e=>{let t=new Map(n);for(let e of b.current)t.has(e)?t.delete(e):b.current.delete(e);let r=new Set([...n.values()].map(e=>e.data.repositoryPath));for(let[n,o]of e){if(t.has(n)||r.has(o.data.repositoryPath)){m.current.delete(n);continue}(n.startsWith("repo-temp-")||m.current.has(n))&&t.set(n,o)}return ea(e,t)?e:t});let{applicationMap:a}=en(e,t);h(e=>ea(e,a)?e:a)},[]),O=(0,t.useCallback)((e,t)=>{l(r=>{let n=r.get(e);if(!n)return g.current.set(e,{...g.current.get(e),...t}),r;if(g.current.delete(e),eo(n.data,t))return r;let o=new Map(r);return o.set(e,{...n,data:{...n.data,...t}}),o}),f(r=>{let n=r.get(e);if(!n||eo(n.data,t))return r;let o=new Map(r);return o.set(e,{...n,data:{...n.data,...t}}),o})},[]),P=(0,t.useCallback)((e,t,r)=>{f(n=>{let o=new Map(n);return o.set(e,{nodeId:e,data:t,parentNodeId:r}),o})},[]),R=(0,t.useCallback)(e=>{f(t=>{if(!t.has(e))return t;let r=new Map(t);return r.delete(e),r})},[]),I=(0,t.useCallback)(e=>{l(t=>{if(!t.has(e))return t;let r=new Map(t);return r.delete(e),r})},[]),L=(0,t.useCallback)((e,t)=>{l(r=>{let n=new Map(r);return n.set(e,t),n})},[]),T=(0,t.useCallback)((e,t)=>{m.current.add(e),b.current.delete(e),c(r=>{let n=new Map(r);return n.set(e,{nodeId:e,data:t}),n})},[]),$=(0,t.useCallback)(e=>{m.current.delete(e),b.current.add(e),c(t=>{if(!t.has(e))return t;let r=new Map(t);return r.delete(e),r})},[]),B=(0,t.useCallback)((e,t,r)=>{m.current.delete(e),m.current.add(t),c(n=>{if(!n.has(e))return n;let o=new Map(n);return o.delete(e),o.set(t,{nodeId:t,data:r}),o})},[]),z=(0,t.useCallback)((e,t)=>{h(r=>{let n=new Map(r);return n.set(e,{nodeId:e,data:t}),n})},[]),G=(0,t.useCallback)(e=>{h(t=>{if(!t.has(e))return t;let r=new Map(t);return r.delete(e),r})},[]),W=(0,t.useCallback)(e=>j.current.get(e)?.data.repositoryPath,[]),q=(0,t.useCallback)(e=>N.current.get(e)?.data,[]),U=(0,t.useCallback)(()=>N.current.size,[]),H=(0,t.useCallback)(e=>{w.current=e},[]),V=(0,t.useCallback)(()=>{v.current++},[]),X=(0,t.useCallback)((e=3e3)=>{let t=setTimeout(()=>{v.current=Math.max(0,v.current-1),x.current.delete(t)},e);x.current.add(t)},[]),Y=(0,t.useCallback)(()=>v.current>0,[]);return(0,t.useEffect)(()=>{let e=x.current;return()=>{for(let t of e)clearTimeout(t);e.clear()}},[]),{nodes:_,edges:D,reconcile:M,updateFeature:O,addPendingFeature:P,removePendingFeature:R,removeFeature:I,restoreFeature:L,addRepository:T,removeRepository:$,replaceRepository:B,getFeatureRepositoryPath:W,getRepositoryData:q,getRepoMapSize:U,addApplication:z,removeApplication:G,setCallbacks:H,beginMutation:V,endMutation:X,isMutating:Y}}(e,o,l),D=(0,t.useRef)(c),M=(0,t.useRef)(u);(0,t.useEffect)(()=>{D.current=c,M.current=u},[c,u]);let O=(0,t.useMemo)(()=>e.map(e=>e.id).sort().join(","),[e]),P=(0,t.useMemo)(()=>e.filter(e=>"featureNode"===e.type).map(e=>{let t=e.data;return`${e.id}:${t.state}:${t.lifecycle}`}).sort().join(","),[e]),R=(0,t.useRef)("");(0,t.useEffect)(()=>{let t=`${O}|${P}`;t!==R.current&&(R.current=t,h(e,o))},[O,P,e,o,h]);let I=(0,t.useRef)(new Map),{events:L}=(0,J.useAgentEventsContext)(),{store:T}=(0,K.useDeploymentStatusContext)();(0,t.useEffect)(()=>{let t=I.current;for(let r of e){if("featureNode"!==r.type)continue;let e=r.data,o=t.get(r.id);void 0!==o&&o!==e.state&&(L.some(t=>t.featureId===e.featureId&&(0,et.mapEventTypeToState)(t.eventType)===e.state)||("done"===e.state?n.toast.success(e.name,{description:"Feature completed!"}):"action-required"===e.state?n.toast.warning(e.name,{description:"Waiting for your approval",action:{label:"Review",onClick:()=>a.push(`/feature/${e.featureId}`)}}):"error"===e.state&&n.toast.error(e.name,{description:e.errorMessage??"Agent failed"}))),t.set(r.id,e.state)}},[P,e,L,a]);let $=(0,t.useRef)(0);(0,t.useEffect)(()=>{if($.current>L.length&&($.current=0),L.length<=$.current)return;let e=L.slice($.current);for(let{featureId:t,state:r,lifecycle:n}of($.current=L.length,(0,et.resolveSseEventUpdates)(e)))if(void 0!==r||void 0!==n){let e=`feat-${t}`,o=D.current.find(t=>t.id===e),a=o?o.data.state:void 0;if("deleting"===a||"error"===r&&_()&&"running"===a)continue;p(e,{...void 0!==r&&{state:r},...void 0!==n&&{lifecycle:n}})}},[L,p,_]),(0,t.useEffect)(()=>{let e=e=>{let{featureId:t}=e.detail;C(),p(`feat-${t}`,{state:"running"}),S()};return window.addEventListener("shep:feature-approved",e),()=>window.removeEventListener("shep:feature-approved",e)},[p,C,S]);let Q=(0,t.useRef)(new Set),ed=(0,t.useRef)(0);(0,t.useEffect)(()=>{if(ed.current>L.length&&(ed.current=0),L.length<=ed.current)return;let e=L.slice(ed.current);for(let t of(ed.current=L.length,e)){if("Feature metadata updated"!==t.message||Q.current.has(t.featureId))continue;Q.current.add(t.featureId);let e=`feat-${t.featureId}`;Y(t.featureId).then(t=>{t&&p(e,{name:t.name,description:t.description})}).catch(()=>{})}},[L,p]),(0,t.useEffect)(()=>{es.debug("polling enabled (15000ms interval)");let e=setInterval(async()=>{if(!document.hidden&&!_())try{let e=await fetch("/api/graph-data");if(!e.ok)throw Error(`status ${e.status}`);let{nodes:t,edges:r,deployments:n}=await e.json();h(t,r),Array.isArray(n)&&T.hydrate(n)}catch{es.warn("poll fetch failed — will retry next interval")}},15e3);return()=>{es.debug("polling disabled"),clearInterval(e)}},[h,_,T]);let ec=(0,t.useCallback)(e=>{},[]),eu=(0,t.useCallback)(e=>{},[]),eh=(0,t.useCallback)((e,t,r)=>{let n=t?.featureId?`feat-${t.featureId}`:`feature-${Date.now()}-${ei++}`,o={name:t?.name??"New Feature",description:t?.description??"Describe what this feature does",featureId:t?.featureId??`#${n.slice(-4)}`,lifecycle:"requirements",state:t?.state??"running",progress:0,repositoryPath:t?.repositoryPath??"",branch:t?.branch??""};return f(n,o,"dependencyEdge"===r&&e?e:void 0),n},[f]),ep=(0,t.useCallback)(e=>{let t=`feat-${e}`;C(),p(t,{state:"running"}),(0,G.resumeFeature)(e).then(e=>{e.error?(p(t,{state:"error"}),n.toast.error(e.error)):n.toast.success("Feature resumed")}).catch(()=>{p(t,{state:"error"}),n.toast.error("Failed to resume feature")}).finally(()=>S())},[p,C,S]),ef=(0,t.useCallback)(e=>{let t=`feat-${e}`;C(),p(t,{state:"running"}),(0,W.startFeature)(e).then(e=>{e.error?(p(t,{state:"pending"}),n.toast.error(e.error)):n.toast.success("Feature started")}).catch(()=>{p(t,{state:"pending"}),n.toast.error("Failed to start feature")}).finally(()=>S())},[p,C,S]),eg=(0,t.useCallback)(e=>{C(),(0,q.stopFeature)(e).then(e=>{e.error?n.toast.error(e.error):n.toast.success("Agent stopped")}).catch(()=>{n.toast.error("Failed to stop agent")}).finally(()=>S())},[C,S]),em=(0,t.useCallback)(e=>{let t=`feat-${e}`;C(),p(t,{state:"archived"}),B(e).then(e=>{e.error?(p(t,{state:"done"}),n.toast.error(e.error)):n.toast.success("Feature archived")}).catch(()=>{p(t,{state:"done"}),n.toast.error("Failed to archive feature")}).finally(()=>S())},[p,C,S]),ev=(0,t.useCallback)(e=>{let t=`feat-${e}`;C(),p(t,{state:"done"}),U(e).then(e=>{e.error?(p(t,{state:"archived"}),n.toast.error(e.error)):n.toast.success("Feature unarchived")}).catch(()=>{p(t,{state:"archived"}),n.toast.error("Failed to unarchive feature")}).finally(()=>S())},[p,C,S]),ex=(0,t.useCallback)((e,t,r,o)=>{let i=`feat-${e}`,l=[];if(!0===r){let e=[i];for(;e.length>0;){let t=e.shift();for(let r of M.current)"dependencyEdge"===r.type&&r.source===t&&(l.push(r.target),e.push(r.target))}}let d=new Map;for(let e of[i,...l]){let t=D.current.find(t=>t.id===e);t&&d.set(e,t.data.state)}for(let e of(C(),p(i,{state:"deleting"}),l))p(e,{state:"deleting"});s.play(),a.push("/"),z(e,t,r,o).then(e=>{if(e.error){for(let[e,t]of d)t&&p(e,{state:t});n.toast.error(e.error)}else for(let e of(g(i),l))g(e)}).catch(()=>{for(let[e,t]of d)t&&p(e,{state:t});n.toast.error("Failed to delete feature")}).finally(()=>S())},[a,s,p,g,C,S]),ey=(0,t.useCallback)(async(e,t)=>{let r=`repo-${e}`,o=new Set(M.current.filter(e=>e.source===r).map(e=>e.target)),a=w(r),i=new Map;for(let e of o){let t=D.current.find(t=>t.id===e);t&&i.set(e,{nodeId:e,data:t.data})}let l=()=>{for(let[e,t]of(a&&v(r,a),i))m(e,t)};for(let e of(C(),x(r),o))g(e);try{let r=await V(e,{deleteFromDisk:t?.deleteFromDisk===!0});if(!r.success){n.toast.error(r.error??"Failed to remove repository"),l();return}s.play()}catch{n.toast.error("Failed to remove repository"),l()}finally{S()}},[s,x,g,v,m,w,C,S]),eb=(0,t.useCallback)(async e=>{let t=(0,ee.featureIdForApplication)(e);C(),N(t),s.play();try{let t=await (0,X.deleteApplication)(e);t.error&&n.toast.error(t.error)}catch{n.toast.error("Failed to delete application")}finally{S()}},[s,N,C,S]),ew=(0,t.useCallback)(e=>{let t=A(D.current,M.current,{...F(),direction:e});h(t.nodes,t.edges)},[h]);return{nodes:c,edges:u,onNodesChange:ec,handleConnect:eu,handleAddRepository:(0,t.useCallback)(e=>{let t=0===k(),r=`repo-temp-${++el}`,o=e.replace(/[\\/]+$/,"").split(/[\\/]/).pop()??e;return C(),v(r,{name:o,repositoryPath:e,id:r,createdAt:Date.now(),gitInfoStatus:"loading"}),(0,H.addRepository)({path:e,name:o}).then(e=>{if(e.error){x(r),n.toast.error(e.error);return}let t=e.repository;y(r,`repo-${t.id}`,{name:t.name,repositoryPath:t.path,id:t.id,createdAt:t.createdAt instanceof Date?t.createdAt.getTime():Number(t.createdAt)}),i.play()}).catch(()=>{x(r),n.toast.error("Failed to add repository")}).finally(()=>S()),{wasEmpty:t,repoPath:e,tempNodeId:r}},[v,x,y,i,k,C,S]),handleArchiveFeature:em,handleLayout:ew,handleDeleteFeature:ex,handleRetryFeature:ep,handleStartFeature:ef,handleStopFeature:eg,handleUnarchiveFeature:ev,handleDeleteRepository:ey,handleDeleteApplication:eb,createFeatureNode:eh,addApplication:j,showArchived:l,setShowArchived:d,getFeatureRepositoryPath:b,getRepositoryData:w,setCallbacks:E}}e.s(["useControlCenterState",()=>ed],917840)},948246,e=>{"use strict";var t=e.i(679606),r=e.i(53271),n=e.i(992786),o=e.i(152155),a=e.i(711434),s=e.i(591925),i=e.i(3214);e.i(541001);var l=e.i(64780),d=e.i(131777),c=e.i(735364);e.i(454793);var u=e.i(207729);e.i(547506);var h=e.i(189313),p=e.i(292002),f=e.i(903645);let g=(0,f.default)("github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]);var m=e.i(208986),v=e.i(338573),x=e.i(619933),y=e.i(267669),b=e.i(724042),w=e.i(64970),k=e.i(949228),j=e.i(565530),N=e.i(907311),E=e.i(194365),C=e.i(438227),S=e.i(248109),_=e.i(626960);e.i(81803);var D=e.i(872714),M=e.i(602287),O=e.i(474363),P=e.i(141957),R=e.i(102828),I=e.i(8537),F=e.i(175921),L=e.i(676852),T=e.i(457779),A=e.i(680554),$=e.i(780519);function B({data:e,selected:n}){let{t:s,i18n:u}=(0,l.useTranslation)("web"),h=(0,a.useRouter)(),f="rtl"===u.dir(),B=f?p.Position.Right:p.Position.Left,z=f?p.Position.Left:p.Position.Right,G=(0,F.useFeatureFlags)(),[W,q]=(0,o.useState)(!1),[U,H]=(0,o.useState)(!1);(0,o.useEffect)(()=>{W&&H(!1)},[W]);let V=e.id?`repo-${e.id}`:`repo-${e.name}`,X=(0,A.useTurnStatus)(V),Y=(0,L.useRepositoryActions)(e.repositoryPath?{repositoryId:e.id,repositoryPath:e.repositoryPath}:null),J=(0,I.useDeployAction)(e.repositoryPath?{targetId:e.repositoryPath,targetType:"repository",repositoryPath:e.repositoryPath}:null),K="Booting"===J.status||"Ready"===J.status,Z=(0,o.useCallback)((t,r)=>{if(!e.repositoryPath)return;let n=t.preview?t.preview.slice(0,200):"Unknown conversation",o=["Continue work from a previous agent session.","","## Session Context",`- Session ID: ${t.id}`,`- Messages: ${t.messageCount}`,t.lastMessageAt?`- Last active: ${t.lastMessageAt}`:"",`- Conversation file: ${r}`,"","## Session Preview",`> ${n}`,"","## Instructions","1. Read the full conversation history from the file above",`2. Analyze the current state of the repository — what was done, what remains`,"3. Create or update spec files to accurately reflect the current state and remaining work","4. Continue implementing any unfinished work from the conversation"].filter(Boolean).join("\n"),a=new URLSearchParams({repo:e.repositoryPath,prompt:o});h.push(`/create?${a.toString()}`)},[e.repositoryPath,h]);return(0,t.jsxs)("div",{className:(0,d.cn)("group relative",e.onDelete&&e.id&&"ps-10"),style:{direction:f?"rtl":"ltr"},children:[e.showHandles?(0,t.jsx)(r.Handle,{type:"target",position:B,isConnectable:!1,className:"opacity-0!",style:{top:70}}):null,e.onDelete&&e.id?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"absolute -start-3 top-1/2 -translate-y-1/2 opacity-0 transition-opacity group-hover:opacity-100",children:(0,t.jsx)(R.TooltipProvider,{children:(0,t.jsxs)(R.Tooltip,{children:[(0,t.jsx)(R.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{"aria-label":s("repositoryNode.removeRepository"),"data-testid":"repository-node-delete-button",onClick:e=>{e.stopPropagation(),q(!0)},className:"bg-card text-muted-foreground hover:border-destructive hover:text-destructive flex h-7 w-7 cursor-pointer items-center justify-center rounded-full border shadow-sm transition-colors",children:(0,t.jsx)(y.Trash2,{className:"h-3.5 w-3.5"})})}),(0,t.jsx)(R.TooltipContent,{children:s("repositoryNode.removeRepository")})]})})}),(0,t.jsx)(M.Dialog,{open:W,onOpenChange:q,children:(0,t.jsxs)(M.DialogContent,{className:"max-w-sm",children:[(0,t.jsxs)(M.DialogHeader,{children:[(0,t.jsx)(M.DialogTitle,{children:s("repositoryNode.removeConfirmTitle")}),(0,t.jsxs)(M.DialogDescription,{children:[(0,t.jsx)(_.Trans,{t:s,i18nKey:"repositoryNode.removeConfirmDescription",values:{name:e.name},components:{strong:(0,t.jsx)("strong",{})}})," ",s(U?"repositoryNode.removeConfirmDescriptionDeleteFiles":"repositoryNode.removeConfirmDescriptionKeepFiles")]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(O.Checkbox,{id:"repository-delete-from-disk",checked:U,onCheckedChange:e=>H(!0===e),"data-testid":"repository-node-delete-from-disk-checkbox","aria-label":s("repositoryNode.deleteFromDiskLabel")}),(0,t.jsx)(P.Label,{htmlFor:"repository-delete-from-disk",className:"cursor-pointer text-sm font-normal",children:s("repositoryNode.deleteFromDiskLabel")})]}),(0,t.jsxs)(M.DialogFooter,{className:"grid grid-cols-2 gap-2 sm:flex-none",children:[(0,t.jsx)(M.DialogClose,{asChild:!0,children:(0,t.jsx)(c.Button,{variant:"outline",children:s("repositoryNode.cancel")})}),(0,t.jsx)(c.Button,{variant:"destructive","data-testid":"repository-node-delete-confirm-button",onClick:()=>{q(!1),e.onDelete?.(e.id,{deleteFromDisk:U})},children:s("repositoryNode.remove")})]})]})})]}):null,(0,t.jsxs)("div",{role:"button",tabIndex:0,"data-testid":"repository-node-card","data-repo-name":e.name,onClick:t=>{t.stopPropagation(),e.onClick?.()},onKeyDown:t=>{("Enter"===t.key||" "===t.key)&&(t.preventDefault(),t.stopPropagation(),e.onClick?.())},className:(0,d.cn)("nodrag bg-card flex w-[26rem] cursor-pointer flex-col overflow-hidden rounded-xl border shadow-sm transition-[border-color,box-shadow] duration-200 dark:bg-neutral-800/80",n&&"border-blue-400 dark:border-amber-500/60"),children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 px-4 py-3",children:[(0,t.jsx)(g,{className:"text-muted-foreground h-5 w-5 shrink-0"}),(0,t.jsx)("span",{"data-testid":"repository-node-name",className:"min-w-0 truncate text-sm font-medium",children:e.name}),(0,t.jsxs)("div",{className:(0,d.cn)("flex shrink-0 items-center gap-2",(e.repositoryPath??e.onAdd)&&"ms-auto"),onClick:e=>e.stopPropagation(),children:[e.repositoryPath?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(R.TooltipProvider,{children:(0,t.jsxs)(R.Tooltip,{children:[(0,t.jsx)(R.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{className:"flex items-center",children:(0,t.jsx)(D.ActionButton,{label:s("repositoryNode.openInIde"),onClick:Y.openInIde,loading:Y.ideLoading,error:!!Y.ideError,icon:m.Code2,iconOnly:!0,variant:"ghost",size:"icon-xs"})})}),(0,t.jsx)(R.TooltipContent,{children:s("repositoryNode.openInIde")})]})}),(0,t.jsx)(R.TooltipProvider,{children:(0,t.jsxs)(R.Tooltip,{children:[(0,t.jsx)(R.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{className:"flex items-center",children:(0,t.jsx)(D.ActionButton,{label:s("repositoryNode.openInShell"),onClick:Y.openInShell,loading:Y.shellLoading,error:!!Y.shellError,icon:v.Terminal,iconOnly:!0,variant:"ghost",size:"icon-xs"})})}),(0,t.jsx)(R.TooltipContent,{children:s("repositoryNode.openInShell")})]})}),(0,t.jsx)(R.TooltipProvider,{children:(0,t.jsxs)(R.Tooltip,{children:[(0,t.jsx)(R.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{className:"flex items-center",children:(0,t.jsx)(D.ActionButton,{label:s("repositoryNode.openFolder"),onClick:Y.openFolder,loading:Y.folderLoading,error:!!Y.folderError,icon:x.FolderOpen,iconOnly:!0,variant:"ghost",size:"icon-xs"})})}),(0,t.jsx)(R.TooltipContent,{children:s("repositoryNode.openFolder")})]})}),(0,t.jsx)(R.TooltipProvider,{children:(0,t.jsxs)(R.Tooltip,{children:[(0,t.jsx)(R.TooltipTrigger,{asChild:!0,children:(0,t.jsxs)(c.Button,{variant:"ghost",size:"icon-xs","aria-label":s("repositoryNode.chatWithAgent"),onClick:t=>{t.stopPropagation(),e.id&&h.push(`/repository/${e.id}/chat`)},className:"nodrag relative cursor-pointer text-violet-500 hover:text-violet-600 dark:text-violet-400 dark:hover:text-violet-300",children:[(0,t.jsx)(S.MessageSquare,{className:"h-3 w-3"}),(0,t.jsx)(T.ChatDotIndicator,{status:X})]})}),(0,t.jsx)(R.TooltipContent,{children:s("repositoryNode.chatWithAgent")})]})}),(0,t.jsx)($.FeatureSessionsDropdown,{repositoryPath:e.repositoryPath,includeWorktrees:!0,onCreateFromSession:Z})]}):null,e.onAdd?(0,t.jsx)("div",{className:"ms-1.5"}):null,e.onAdd?(0,t.jsx)(R.TooltipProvider,{children:(0,t.jsxs)(R.Tooltip,{children:[(0,t.jsx)(R.TooltipTrigger,{asChild:!0,children:(0,t.jsxs)("button",{"aria-label":s("repositoryNode.newFeature"),"data-testid":"repository-node-add-button",onClick:t=>{t.stopPropagation(),e.onAdd?.()},className:(0,d.cn)("flex h-6 shrink-0 cursor-pointer items-center gap-0.5 rounded bg-blue-500 px-1.5 text-[11px] font-bold text-white transition-colors hover:bg-blue-600 dark:bg-amber-500 dark:hover:bg-amber-400",e.pulseAdd&&"animate-pulse-cta"),children:[(0,t.jsx)(i.Plus,{className:"h-3 w-3"}),(0,t.jsx)("span",{className:"translate-y-px",children:s("repositoryNode.new")})]})}),(0,t.jsx)(R.TooltipContent,{side:"top",children:s("repositoryNode.newFeature")})]})}):null]})]}),e.branch?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{"data-testid":"repository-node-git-info",className:"text-muted-foreground border-border/50 border-t px-4 py-2",children:(0,t.jsxs)("div",{className:"flex items-center gap-3 text-xs",children:[(0,t.jsxs)("span",{className:"flex items-center gap-1 truncate","data-testid":"repository-node-branch",children:[(0,t.jsx)(k.GitBranch,{className:"h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"truncate",children:e.branch})]}),null!=e.behindCount&&e.behindCount>0?(0,t.jsxs)("span",{className:"flex shrink-0 items-center gap-1 whitespace-nowrap text-amber-500","data-testid":"repository-node-behind",children:[(0,t.jsx)(N.ArrowDown,{className:"h-3 w-3 shrink-0"}),s("repositoryNode.behind",{count:e.behindCount})]}):null]})}),e.commitMessage?(0,t.jsx)("div",{"data-testid":"repository-node-commit-info",className:"text-muted-foreground border-border/50 border-t px-4 py-2",children:(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[(0,t.jsx)(j.GitCommitHorizontal,{className:"h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"min-w-0 truncate","data-testid":"repository-node-commit-message",children:e.commitMessage}),e.committer?(0,t.jsxs)("span",{className:"text-muted-foreground/70 ms-auto flex shrink-0 items-center gap-1","data-testid":"repository-node-committer",children:[(0,t.jsx)(E.User,{className:"h-3 w-3 shrink-0"}),(0,t.jsx)("span",{children:e.committer})]}):null]})}):null]}):"not-a-repo"===e.gitInfoStatus?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{"data-testid":"repository-node-not-repo",className:"text-muted-foreground border-border/50 border-t px-4 py-2",children:(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[(0,t.jsx)(x.FolderOpen,{className:"h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"min-w-0 truncate opacity-60",children:e.repositoryPath??"Unknown path"})]})}),(0,t.jsx)("div",{className:"text-muted-foreground border-border/50 border-t px-4 py-2",children:(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs opacity-40",children:[(0,t.jsx)(k.GitBranch,{className:"h-3 w-3 shrink-0"}),(0,t.jsx)("span",{children:s("repositoryNode.notAGitRepository")})]})})]}):"ready"!==e.gitInfoStatus?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{"data-testid":"repository-node-git-loading",className:"border-border/50 border-t px-4 py-2",children:(0,t.jsxs)("div",{className:"flex h-4 items-center gap-2 text-xs",children:[(0,t.jsx)(k.GitBranch,{className:"text-muted-foreground h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"bg-muted h-3 w-20 animate-pulse rounded"})]})}),(0,t.jsx)("div",{className:"border-border/50 border-t px-4 py-2",children:(0,t.jsxs)("div",{className:"flex h-4 items-center gap-2 text-xs",children:[(0,t.jsx)(j.GitCommitHorizontal,{className:"text-muted-foreground h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"bg-muted h-3 w-36 animate-pulse rounded"})]})})]}):null,G.envDeploy&&e.repositoryPath?(0,t.jsx)("div",{"data-testid":"repository-node-dev-preview",className:"border-border/50 border-t px-4 py-2",onClick:e=>e.stopPropagation(),children:(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[J.deployError?(0,t.jsx)("span",{className:"truncate text-xs text-red-500",children:J.deployError}):K?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"me-0.5 inline-block h-2 w-2 shrink-0 rounded-full bg-green-500"}),J.url?(0,t.jsx)("a",{href:J.url,target:"_blank",rel:"noopener noreferrer",className:"truncate text-green-700 hover:underline dark:text-green-400",children:J.url}):(0,t.jsx)("span",{className:"text-muted-foreground",children:s("repositoryNode.starting")})]}):(0,t.jsxs)("span",{className:"text-muted-foreground inline-flex items-baseline gap-2",children:[(0,t.jsx)("span",{children:s("repositoryNode.run")}),(0,t.jsx)("span",{className:"text-muted-foreground/50 text-[10px]",children:s("repositoryNode.startLocalEnvironment")})]}),(0,t.jsx)(R.TooltipProvider,{children:(0,t.jsxs)(R.Tooltip,{children:[(0,t.jsx)(R.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{className:(0,d.cn)("ms-auto flex items-center",!K&&!J.deployError&&"[&_button]:text-green-600 [&_button]:hover:text-green-700 dark:[&_button]:text-green-400 dark:[&_button]:hover:text-green-300"),children:(0,t.jsx)(D.ActionButton,{label:s(J.deployError?"repositoryNode.retry":K?"repositoryNode.stopDevServer":"repositoryNode.startDevServer"),onClick:K?J.stop:J.deploy,loading:J.deployLoading||J.stopLoading,error:!1,icon:J.deployError?C.RotateCcw:K?w.Square:b.Play,iconOnly:!0,variant:"ghost",size:"icon-xs"})})}),(0,t.jsx)(R.TooltipContent,{children:s(K?"repositoryNode.stopDevServer":"repositoryNode.startDevServer")})]})})]})}):null]}),e.onAdd||e.showHandles?(0,t.jsx)(r.Handle,{type:"source",position:z,isConnectable:!e.showHandles,className:"opacity-0!",style:{top:70}}):null]})}e.i(1650),e.i(845811),e.i(425235);var z=e.i(730702),G=e.i(542049),W=e.i(83428),q=e.i(370002),U=e.i(317406),H=e.i(672971),V=e.i(657365);function X({data:e,selected:n}){let{i18n:a}=(0,l.useTranslation)("web"),s="rtl"===a.dir(),i=s?p.Position.Right:p.Position.Left,u=s?p.Position.Left:p.Position.Right,[h,f]=(0,o.useState)(!1),g=1+e.additionalPathCount,m=1===g?"1 repository":`${g} repositories`,v=(0,A.useTurnStatus)((0,H.featureIdForApplication)(e.id)),x=(0,I.useDeployAction)({targetId:e.id,targetType:"application",repositoryPath:e.repositoryPath}),k=x.url,j=(0,V.deriveAppLiveStatus)(e.status,v,!!k),N=(0,o.useCallback)(e=>{e.stopPropagation()},[]),E=(0,o.useCallback)(e=>{e.stopPropagation(),k&&window.open(k,"_blank","noopener,noreferrer")},[k]);return(0,t.jsxs)("div",{className:"group relative",style:{direction:s?"rtl":"ltr"},children:[(0,t.jsx)(r.Handle,{type:"target",position:i,isConnectable:!1,className:"opacity-0!",style:{top:70}}),e.onDelete&&e.id?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"absolute -start-14 top-0 bottom-0 flex items-center justify-center ps-4 pe-3 opacity-0 transition-opacity group-hover:opacity-100",onPointerDown:e=>e.stopPropagation(),children:(0,t.jsx)(R.TooltipProvider,{children:(0,t.jsxs)(R.Tooltip,{children:[(0,t.jsx)(R.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{"aria-label":"Remove application","data-testid":"application-node-delete-button",onClick:e=>{e.stopPropagation(),f(!0)},className:"bg-card text-muted-foreground hover:border-destructive hover:text-destructive flex h-7 w-7 cursor-pointer items-center justify-center rounded-full border shadow-sm transition-colors",children:(0,t.jsx)(y.Trash2,{className:"h-3.5 w-3.5"})})}),(0,t.jsx)(R.TooltipContent,{children:"Remove application"})]})})}),(0,t.jsx)(M.Dialog,{open:h,onOpenChange:f,children:(0,t.jsxs)(M.DialogContent,{className:"max-w-xs",children:[(0,t.jsxs)(M.DialogHeader,{children:[(0,t.jsx)(M.DialogTitle,{children:"Remove application?"}),(0,t.jsxs)(M.DialogDescription,{children:["This will remove ",(0,t.jsx)("strong",{children:e.name})," from your workspace."]})]}),(0,t.jsxs)(M.DialogFooter,{className:"grid grid-cols-2 gap-2 sm:flex-none",children:[(0,t.jsx)(M.DialogClose,{asChild:!0,children:(0,t.jsx)(c.Button,{variant:"outline",children:"Cancel"})}),(0,t.jsx)(c.Button,{variant:"destructive",onClick:()=>{f(!1),e.onDelete?.(e.id)},children:"Remove"})]})]})})]}):null,(0,t.jsxs)("div",{role:"button",tabIndex:0,"data-testid":"application-node-card","data-app-name":e.name,onClick:t=>{t.stopPropagation(),e.onClick?.()},onKeyDown:t=>{("Enter"===t.key||" "===t.key)&&(t.preventDefault(),t.stopPropagation(),e.onClick?.())},className:(0,d.cn)("nodrag bg-card flex w-[26rem] cursor-pointer flex-col overflow-hidden rounded-xl border shadow-sm transition-[border-color,box-shadow] duration-200 dark:bg-neutral-800/80",n&&"border-blue-400 dark:border-amber-500/60",!n&&j.borderClass),children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 px-4 py-4",children:[(0,t.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-gradient-to-br from-indigo-500 to-violet-500",children:(0,t.jsx)(G.LayoutGrid,{className:"h-4 w-4 text-white"})}),(0,t.jsx)("span",{"data-testid":"application-node-name",className:"min-w-0 truncate text-sm font-medium",children:e.name}),(0,t.jsxs)("span",{className:"ms-auto flex shrink-0 items-center gap-1.5",children:[(0,t.jsx)("span",{"data-testid":"application-node-status-dot",className:(0,d.cn)("relative flex h-2 w-2 items-center justify-center rounded-full",j.dotClass),children:j.pulse?(0,t.jsx)("span",{className:(0,d.cn)("absolute inline-flex h-full w-full animate-ping rounded-full opacity-60",j.dotClass)}):null}),(0,t.jsx)("span",{"data-testid":"application-node-status-text",className:"text-muted-foreground text-xs",children:j.label})]})]}),(0,t.jsx)("div",{className:"px-4 pb-4",children:(0,t.jsxs)("div",{className:"bg-muted group/preview relative overflow-hidden rounded-lg",style:{height:180},children:[k?(0,t.jsx)("iframe",{src:k,title:`${e.name} live preview`,className:"pointer-events-none absolute top-0 left-0 origin-top-left border-0 bg-white",style:{width:"250%",height:"250%",transform:"scale(0.4)"},sandbox:"allow-same-origin allow-scripts",loading:"lazy"}):(0,t.jsxs)("div",{className:"pointer-events-none absolute inset-0 opacity-50 grayscale",children:[(0,t.jsxs)("div",{className:"flex h-6 items-center gap-2 px-2",style:{background:"var(--muted)"},children:[(0,t.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-2 rounded-full"}),(0,t.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-2 rounded-full"}),(0,t.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-2 rounded-full"}),(0,t.jsx)("div",{className:"bg-muted-foreground/10 ms-2 h-2 w-16 rounded"})]}),(0,t.jsxs)("div",{className:"flex h-[calc(100%-1.5rem)]",children:[(0,t.jsxs)("div",{className:"border-muted-foreground/5 flex w-[50px] flex-col gap-2 border-e p-2",children:[(0,t.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-full rounded"}),(0,t.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-3/4 rounded"}),(0,t.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-full rounded"})]}),(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-2 p-3",children:[(0,t.jsx)("div",{className:"bg-muted-foreground/10 h-2.5 w-2/3 rounded"}),(0,t.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-full rounded"}),(0,t.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-5/6 rounded"}),(0,t.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-3/4 rounded"}),(0,t.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-2/3 rounded"})]})]})]}),x.status===U.DeploymentState.Ready&&k?(0,t.jsxs)("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center gap-2 bg-neutral-900/75 opacity-0 transition-opacity duration-150 group-hover/preview:pointer-events-auto group-hover/preview:opacity-100 dark:bg-neutral-950/80",onPointerDown:N,onClick:N,children:[(0,t.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),x.stop()},disabled:x.stopLoading,"aria-label":"Stop dev server",title:"Stop dev server",className:"inline-flex h-9 cursor-pointer items-center gap-1.5 rounded-md border border-neutral-300 bg-white px-3 text-xs font-semibold text-neutral-900 shadow-md transition-colors hover:border-red-500 hover:bg-red-50 hover:text-red-600 dark:border-neutral-700 dark:bg-neutral-900 dark:text-neutral-100 dark:hover:border-red-500 dark:hover:bg-red-950 dark:hover:text-red-400",children:[x.stopLoading?(0,t.jsx)(W.Loader2,{className:"h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(w.Square,{className:"h-3.5 w-3.5 fill-current"}),(0,t.jsx)("span",{children:"Stop"})]}),(0,t.jsxs)("button",{type:"button",onClick:E,"aria-label":`Open ${e.name} in a new tab`,title:k,className:"inline-flex h-9 cursor-pointer items-center gap-1.5 rounded-md border border-neutral-300 bg-white px-3 text-xs font-semibold text-neutral-900 shadow-md transition-colors hover:bg-neutral-50 dark:border-neutral-700 dark:bg-neutral-900 dark:text-neutral-100 dark:hover:bg-neutral-800",children:[(0,t.jsx)(z.ExternalLink,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:"Open"})]})]}):null,x.status===U.DeploymentState.Booting||x.deployLoading?(0,t.jsxs)("div",{className:"absolute inset-0 flex flex-col items-center justify-center gap-2 bg-neutral-100 dark:bg-neutral-900",children:[(0,t.jsx)(W.Loader2,{className:"h-8 w-8 animate-spin text-amber-500"}),(0,t.jsx)("span",{className:"text-foreground text-xs font-medium",children:"Starting…"})]}):null,x.stopLoading&&x.status===U.DeploymentState.Ready?(0,t.jsxs)("div",{className:"absolute inset-0 flex flex-col items-center justify-center gap-2 bg-neutral-900/75 dark:bg-neutral-950/80",children:[(0,t.jsx)(W.Loader2,{className:"h-8 w-8 animate-spin text-neutral-100"}),(0,t.jsx)("span",{className:"text-xs font-medium text-neutral-100",children:"Stopping…"})]}):null,x.deployLoading||x.stopLoading||x.status===U.DeploymentState.Booting||x.status===U.DeploymentState.Ready||!x.deployError?null:(0,t.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),x.deploy()},onPointerDown:N,className:"absolute inset-0 flex flex-col items-center justify-center gap-2 bg-neutral-100 transition-colors hover:bg-neutral-200 dark:bg-neutral-900 dark:hover:bg-neutral-800",children:[(0,t.jsx)(q.TriangleAlert,{className:"h-8 w-8 text-red-500"}),(0,t.jsx)("span",{className:"text-xs font-medium text-red-600 dark:text-red-400",children:"Failed — click to retry"})]}),!k&&!x.deployLoading&&x.status!==U.DeploymentState.Booting&&!x.deployError&&(0,t.jsx)("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center bg-neutral-900/75 opacity-0 transition-opacity duration-150 group-hover/preview:pointer-events-auto group-hover/preview:opacity-100 dark:bg-neutral-950/80",children:(0,t.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),x.deploy()},onPointerDown:N,className:"inline-flex h-9 items-center gap-2 rounded-md border border-violet-400 bg-gradient-to-br from-indigo-500 to-violet-600 px-4 text-xs font-semibold text-white shadow-md transition-[filter] hover:brightness-110","aria-label":"Start dev server preview",children:[(0,t.jsx)(b.Play,{className:"h-3.5 w-3.5 fill-current"}),(0,t.jsx)("span",{children:"Start Preview"})]})})]})}),(0,t.jsx)("div",{className:"px-4 pb-4",children:(0,t.jsx)("span",{"data-testid":"application-node-repo-count",className:"text-muted-foreground text-xs",children:m})})]}),(0,t.jsx)(r.Handle,{type:"source",position:u,isConnectable:!1,className:"opacity-0!",style:{top:70}})]})}function Y(e){let[n]=(0,p.getBezierPath)({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY,sourcePosition:e.sourcePosition,targetPosition:e.targetPosition});return(0,t.jsx)(r.BaseEdge,{id:e.id,path:n,style:{strokeDasharray:"5 5"}})}let J={x:30,y:30,zoom:.85};function K({nodes:e,edges:n,selectedFeatureId:a,selectedRepository:s,defaultViewport:p,onNodesChange:f,onAddFeature:g,onConnect:m,onNodeClick:v,onPaneClick:x,onCanvasDrag:y,onMoveEnd:b,toolbar:w,showToolbarOnEmpty:k=!0,emptyState:j}){let{t:N}=(0,l.useTranslation)("web"),E=(0,o.useMemo)(()=>({featureNode:h.FeatureNode,repositoryNode:B,applicationNode:X}),[]),C=(0,o.useMemo)(()=>({dependencyEdge:Y}),[]),S=(0,o.useMemo)(()=>{let t=null!=a,r=null!=s&&(null!=s.id||null!=s.path);return t||r?e.map(e=>{if(t&&"featureNode"===e.type&&e.data.featureId===a)return{...e,selected:!0};if(r&&"repositoryNode"===e.type){let t=e.data,r=null!=s.id&&(e.id===s.id||t.id===s.id),n=null!=s.path&&t.repositoryPath===s.path;if(r||n)return{...e,selected:!0}}return e}):e},[e,a,s]),_=0===e.length,[D,M]=(0,o.useState)(_),[O,P]=(0,o.useState)(!1),R=(0,o.useRef)(_);(0,o.useEffect)(()=>{if(R.current&&!_){P(!0);let e=setTimeout(()=>{M(!1),P(!1)},300);return R.current=_,()=>clearTimeout(e)}!R.current&&_&&M(!0),R.current=_},[_]);let I=_&&!j?(0,t.jsx)(u.EmptyState,{title:N("canvas.noFeatures"),description:N("canvas.noFeaturesDescription"),action:(0,t.jsxs)(c.Button,{onClick:g,children:[(0,t.jsx)(i.Plus,{className:"me-2 h-4 w-4"}),N("canvas.newFeature")]})}):null,F=j??I;return(0,t.jsxs)("div",{"data-testid":_?"features-canvas-empty":"features-canvas","data-no-drawer-close":!0,className:"dark:bg-background pointer-events-auto relative h-full w-full bg-[#f6f7f8]",children:[(0,t.jsxs)(r.ReactFlow,{nodes:S,edges:n,nodeTypes:E,edgeTypes:C,onConnect:m,onNodesChange:f,onNodeClick:v,onPaneClick:x,onMoveStart:y,onMoveEnd:b,defaultViewport:p??J,nodesDraggable:!1,nodesConnectable:!1,elementsSelectable:!1,proOptions:{hideAttribution:!0},className:"[&_.react-flow__pane]:!cursor-default",children:[(0,t.jsx)(r.Background,{variant:r.BackgroundVariant.Dots,gap:24,size:1,color:"#b8bcc4",className:"dark:[&_circle]:!fill-white/[0.1]"}),w&&!_?(0,t.jsx)(r.Panel,{position:"top-right",className:"!me-3 !mt-3",children:w}):null]}),D&&F?(0,t.jsx)("div",{className:(0,d.cn)("pointer-events-none absolute inset-0 z-10 flex items-center justify-center transition-opacity duration-300",O?"opacity-0":"animate-in fade-in opacity-100 duration-200"),children:(0,t.jsx)("div",{className:"pointer-events-auto h-full w-full",children:F})}):null,w&&_&&k?(0,t.jsx)("div",{className:"pointer-events-auto absolute end-3 top-3 z-20",children:w}):null]})}var Z=e.i(987889),Q=e.i(806288);let ee=(0,f.default)("zoom-in",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"11",x2:"11",y1:"8",y2:"14",key:"1vmskp"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]]),et=(0,f.default)("zoom-out",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]]),er=(0,f.default)("maximize",[["path",{d:"M8 3H5a2 2 0 0 0-2 2v3",key:"1dcmit"}],["path",{d:"M21 8V5a2 2 0 0 0-2-2h-3",key:"1e4gt3"}],["path",{d:"M3 16v3a2 2 0 0 0 2 2h3",key:"wsl5sc"}],["path",{d:"M16 21h3a2 2 0 0 0 2-2v-3",key:"18trek"}]]);function en({showArchived:e,onToggleArchived:n,onResetViewport:a,startSlot:s}){let{t:i}=(0,l.useTranslation)("web"),{zoomIn:d,zoomOut:c,fitView:u,setViewport:h}=(0,r.useReactFlow)(),p=(0,o.useCallback)(()=>{d({duration:200})},[d]),f=(0,o.useCallback)(()=>{c({duration:200})},[c]),g=(0,o.useCallback)(()=>{u({duration:400,padding:.3})},[u]),m=(0,o.useCallback)(()=>{a&&h(a(),{duration:400})},[a,h]);return(0,t.jsxs)("div",{className:"bg-background flex items-center gap-1 rounded-xl border px-2 py-1.5 shadow-md dark:bg-neutral-900",children:[s?(0,t.jsxs)(t.Fragment,{children:[s,(0,t.jsx)("div",{className:"bg-border mx-1 h-5 w-px"})]}):null,(0,t.jsx)(eo,{onClick:n,title:i(e?"canvas.hideArchived":"canvas.showArchived"),active:e,label:i(e?"canvas.hideArchivedLabel":"canvas.showArchivedLabel"),children:e?(0,t.jsx)(Z.Eye,{className:"h-4 w-4"}):(0,t.jsx)(Q.EyeOff,{className:"h-4 w-4"})}),(0,t.jsx)("div",{className:"bg-border mx-1 h-5 w-px"}),(0,t.jsx)(eo,{onClick:f,title:i("canvas.zoomOut"),children:(0,t.jsx)(et,{className:"h-4 w-4"})}),(0,t.jsx)(eo,{onClick:p,title:i("canvas.zoomIn"),children:(0,t.jsx)(ee,{className:"h-4 w-4"})}),(0,t.jsx)(eo,{onClick:g,title:i("canvas.fitView"),children:(0,t.jsx)(er,{className:"h-4 w-4"})}),a?(0,t.jsx)(eo,{onClick:m,title:i("canvas.resetView"),children:(0,t.jsx)(C.RotateCcw,{className:"h-4 w-4"})}):null]})}function eo({children:e,onClick:r,title:n,label:o,active:a}){return(0,t.jsxs)("button",{type:"button",onClick:r,title:n,className:(0,d.cn)("inline-flex items-center gap-1.5 rounded-lg px-2 py-1.5 text-xs font-medium transition-colors","hover:bg-accent hover:text-accent-foreground",a?"text-primary bg-primary/10":"text-muted-foreground"),children:[e,o?(0,t.jsx)("span",{children:o}):null]})}var ea=e.i(976874),es=e.i(723925),ei=e.i(998798),el=e.i(713005),ed=e.i(470646);let ec="shep:workspaces:v1",eu="default",eh={workspaces:[{id:eu,name:"Default",repoIds:[],featureIds:[]}],activeWorkspaceId:eu};function ep({workspaces:e,activeWorkspace:r,onSelect:n,onRequestCreate:a,onRequestRename:s,onRequestDelete:l,onManage:c}){let[u,h]=(0,o.useState)(!1),p=r.id===eu;return(0,t.jsxs)(ed.DropdownMenu,{open:u,onOpenChange:h,children:[(0,t.jsx)(ed.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsxs)("button",{type:"button","data-testid":"workspace-selector-trigger",className:(0,d.cn)("inline-flex items-center gap-1.5 rounded-lg px-2 py-1.5 text-xs font-medium transition-colors","hover:bg-accent hover:text-accent-foreground",p?"text-muted-foreground":"text-primary bg-primary/10"),title:"Workspace",children:[(0,t.jsx)(ea.Layers,{className:"h-4 w-4"}),(0,t.jsx)("span",{className:"max-w-[120px] truncate",children:r.name})]})}),(0,t.jsxs)(ed.DropdownMenuContent,{align:"start",className:"min-w-[220px]",children:[(0,t.jsx)(ed.DropdownMenuLabel,{children:"Workspaces"}),(0,t.jsx)(ed.DropdownMenuSeparator,{}),e.map(e=>{let o=e.id===r.id,a=e.id!==eu;return(0,t.jsxs)(ed.DropdownMenuItem,{onSelect:()=>n(e.id),className:"group/ws-row flex items-center justify-between gap-2",children:[(0,t.jsx)("span",{className:"truncate",children:e.name}),(0,t.jsxs)("span",{className:"flex shrink-0 items-center gap-1",children:[o?(0,t.jsx)(es.Check,{className:"h-3.5 w-3.5"}):null,a?(0,t.jsx)("button",{type:"button","aria-label":`Delete workspace ${e.name}`,title:`Delete workspace ${e.name}`,onClick:t=>{t.preventDefault(),t.stopPropagation(),h(!1),l(e.id)},className:"text-muted-foreground hover:bg-destructive/10 hover:text-destructive rounded p-0.5 opacity-0 transition-opacity group-hover/ws-row:opacity-100 focus-visible:opacity-100",children:(0,t.jsx)(y.Trash2,{className:"h-3.5 w-3.5"})}):null]})]},e.id)}),(0,t.jsx)(ed.DropdownMenuSeparator,{}),(0,t.jsxs)(ed.DropdownMenuItem,{onSelect:a,children:[(0,t.jsx)(i.Plus,{className:"mr-2 h-3.5 w-3.5"}),"New workspace…"]}),(0,t.jsxs)(ed.DropdownMenuItem,{onSelect:c,disabled:p,children:[(0,t.jsx)(el.SlidersHorizontal,{className:"mr-2 h-3.5 w-3.5"}),"Manage items…"]}),(0,t.jsxs)(ed.DropdownMenuItem,{onSelect:s,disabled:p,children:[(0,t.jsx)(ei.Pencil,{className:"mr-2 h-3.5 w-3.5"}),"Rename"]})]})]})}var ef=e.i(853756);function eg({open:e,onOpenChange:r,workspace:n,allNodes:a,onSave:s}){let[i,l]=(0,o.useState)(new Set),[d,u]=(0,o.useState)(new Set);(0,o.useEffect)(()=>{e&&(l(new Set(n.repoIds)),u(new Set(n.featureIds)))},[e,n]);let h=(0,o.useMemo)(()=>{let e=[],t=new Map;for(let r of a){if("repositoryNode"!==r.type)continue;let n=r.data,o=n.repositoryPath??"",a={nodeId:r.id,name:n.name??o.split("/").filter(Boolean).pop()??o,features:[]};e.push(a),t.set(o,a)}for(let e of a){if("featureNode"!==e.type)continue;let r=e.data,n=t.get(r.repositoryPath??"");n&&n.features.push({nodeId:e.id,name:r.name})}return e},[a]);return(0,t.jsx)(M.Dialog,{open:e,onOpenChange:r,children:(0,t.jsxs)(M.DialogContent,{className:"max-h-[80vh] max-w-lg overflow-hidden",children:[(0,t.jsxs)(M.DialogHeader,{children:[(0,t.jsxs)(M.DialogTitle,{children:["Manage workspace: ",n.name]}),(0,t.jsx)(M.DialogDescription,{children:"Select the repositories and features that should appear on this workspace's canvas."})]}),(0,t.jsx)("div",{className:"-mx-6 max-h-[50vh] overflow-y-auto px-6",children:0===h.length?(0,t.jsx)("p",{className:"text-muted-foreground py-8 text-center text-sm",children:"No repositories on the canvas yet."}):(0,t.jsx)("ul",{className:"space-y-3 py-2",children:h.map(e=>(0,t.jsxs)("li",{children:[(0,t.jsxs)("label",{className:"hover:bg-accent/30 flex cursor-pointer items-center gap-2 rounded-md px-2 py-1.5",children:[(0,t.jsx)(O.Checkbox,{checked:i.has(e.nodeId),onCheckedChange:()=>{var t;return t=e.nodeId,void l(e=>{let r=new Set(e);return r.has(t)?r.delete(t):r.add(t),r})}}),(0,t.jsx)(k.GitBranch,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)("span",{className:"text-sm font-medium",children:e.name})]}),e.features.length>0?(0,t.jsx)("ul",{className:"mt-1 ml-7 space-y-0.5",children:e.features.map(e=>(0,t.jsx)("li",{children:(0,t.jsxs)("label",{className:"hover:bg-accent/30 flex cursor-pointer items-center gap-2 rounded-md px-2 py-1",children:[(0,t.jsx)(O.Checkbox,{checked:d.has(e.nodeId),onCheckedChange:()=>{var t;return t=e.nodeId,void u(e=>{let r=new Set(e);return r.has(t)?r.delete(t):r.add(t),r})}}),(0,t.jsx)(ef.Sparkles,{className:"text-muted-foreground h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:e.name})]})},e.nodeId))}):null]},e.nodeId))})}),(0,t.jsxs)(M.DialogFooter,{children:[(0,t.jsx)(c.Button,{variant:"ghost",onClick:()=>r(!1),children:"Cancel"}),(0,t.jsx)(c.Button,{onClick:()=>{s({repoIds:Array.from(i),featureIds:Array.from(d)}),r(!1)},children:"Save"})]})]})})}var em=e.i(698127);function ev({open:e,onOpenChange:r,title:n,description:a,initialValue:s="",confirmLabel:i,onConfirm:l}){let[d,u]=(0,o.useState)(s);return(0,o.useEffect)(()=>{e&&u(s)},[e,s]),(0,t.jsx)(M.Dialog,{open:e,onOpenChange:r,children:(0,t.jsx)(M.DialogContent,{className:"max-w-sm",children:(0,t.jsxs)("form",{onSubmit:e=>{e.preventDefault();let t=d.trim();t&&(l(t),r(!1))},children:[(0,t.jsxs)(M.DialogHeader,{children:[(0,t.jsx)(M.DialogTitle,{children:n}),a?(0,t.jsx)(M.DialogDescription,{children:a}):null]}),(0,t.jsx)("div",{className:"py-4",children:(0,t.jsx)(em.Input,{autoFocus:!0,value:d,onChange:e=>u(e.target.value),placeholder:"Workspace name","data-testid":"workspace-name-input"})}),(0,t.jsxs)(M.DialogFooter,{children:[(0,t.jsx)(c.Button,{type:"button",variant:"ghost",onClick:()=>r(!1),children:"Cancel"}),(0,t.jsx)(c.Button,{type:"submit",disabled:!d.trim(),children:i})]})]})})})}var ex=e.i(271326),ey=e.i(860253);function eb({actions:e,className:r,style:n}){let{t:a}=(0,l.useTranslation)("web"),[s,u]=(0,o.useState)(!1);return(0,o.useEffect)(()=>{if(s)return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e);function e(e){"Escape"===e.key&&u(!1)}},[s]),(0,t.jsxs)(t.Fragment,{children:[s?(0,t.jsx)("div",{"data-testid":"fab-overlay",className:"fixed inset-0 z-40",onClick:()=>u(!1),"aria-hidden":"true"}):null,(0,t.jsxs)("div",{"data-testid":"floating-action-button",className:(0,d.cn)("relative z-50",r),style:n,children:[(0,t.jsx)("div",{className:(0,d.cn)("absolute start-0 bottom-[calc(100%+24px)] flex flex-col items-start gap-2",!s&&"pointer-events-none"),"data-testid":"fab-actions",children:e.map((r,n)=>{let o=(e.length-1-n)*50;return(0,t.jsxs)("button",{"data-testid":`fab-action-${r.id}`,"aria-label":r.label,disabled:r.disabled??r.loading,className:(0,d.cn)("flex h-10 items-center gap-2.5 rounded-full px-4","bg-background text-foreground shadow-md","border-border border","hover:bg-accent hover:text-accent-foreground","disabled:pointer-events-none disabled:opacity-50","text-sm font-medium whitespace-nowrap",s?"translate-y-0 opacity-100":"pointer-events-none translate-y-0 opacity-0"),style:{transition:`opacity ${s?250:120}ms ease-out ${s?o:0}ms, transform ${s?250:120}ms ease-out ${s?o:0}ms`},onClick:()=>{r.onClick(),u(!1)},children:[(0,t.jsx)("span",{className:"flex h-5 w-5 shrink-0 items-center justify-center",children:r.loading?(0,t.jsx)(W.Loader2,{className:"h-4 w-4 animate-spin"}):r.icon}),(0,t.jsx)("span",{children:r.label})]},r.id)})}),(0,t.jsxs)(c.Button,{size:"icon","data-testid":"fab-trigger","aria-label":a(s?"fab.closeActions":"fab.createNew"),className:(0,d.cn)("relative h-14 w-14 rounded-full shadow-lg","bg-indigo-500 text-white hover:bg-indigo-400 dark:bg-indigo-500 dark:hover:bg-indigo-400","transition-all duration-200 hover:scale-105 hover:shadow-xl active:scale-95"),onClick:()=>u(e=>!e),children:[(0,t.jsx)(i.Plus,{className:(0,d.cn)("absolute h-7 w-7 stroke-[2.5] transition-all",s?"scale-0 rotate-90 opacity-0":"scale-100 rotate-0 opacity-100"),style:{transitionDuration:"250ms"}}),(0,t.jsx)(ey.X,{className:(0,d.cn)("absolute h-6 w-6 stroke-[2.5] transition-all",s?"scale-100 rotate-0 opacity-100":"scale-0 -rotate-90 opacity-0"),style:{transitionDuration:"250ms"}})]})]})]})}var ew=e.i(805147),ek=e.i(808361),ej=e.i(930153);let eN="shep-canvas-viewport",eE={x:30,y:30,zoom:.85};var eC=e.i(957638),eS=e.i(655827),e_=e.i(440106),eD=e.i(508893);let eM=(0,eD.createServerReference)("4093a1859c212ac80e0abd7242ba7d97cc71d682c4",eD.callServer,void 0,eD.findSourceMapURL,"createProjectFolder");function eO({open:e,onOpenChange:r,onCreated:n}){let[a,s]=(0,o.useState)(""),[i,l]=(0,o.useState)(!1),[d,u]=(0,o.useState)(null);(0,o.useEffect)(()=>{e&&(s(""),l(!1),u(null))},[e]);let h=async e=>{e.preventDefault();let t=a.trim();if(!t||i)return;l(!0),u(null);let o=await eM(t);if(!o.ok||!o.path){u(o.error??"Failed to create project."),l(!1);return}n(o.path),r(!1)};return(0,t.jsx)(M.Dialog,{open:e,onOpenChange:r,children:(0,t.jsx)(M.DialogContent,{className:"max-w-sm",children:(0,t.jsxs)("form",{onSubmit:h,children:[(0,t.jsxs)(M.DialogHeader,{children:[(0,t.jsx)(M.DialogTitle,{children:"New project"}),(0,t.jsx)(M.DialogDescription,{children:"Create an empty project folder inside your Shep home directory. Git will be initialised automatically when the project is added."})]}),(0,t.jsxs)("div",{className:"py-4",children:[(0,t.jsx)(em.Input,{autoFocus:!0,value:a,onChange:e=>{s(e.target.value),d&&u(null)},placeholder:"my-prototype",disabled:i,"data-testid":"new-project-name-input"}),d?(0,t.jsx)("p",{className:"text-destructive mt-2 text-xs",role:"alert",children:d}):null]}),(0,t.jsxs)(M.DialogFooter,{children:[(0,t.jsx)(c.Button,{type:"button",variant:"ghost",onClick:()=>r(!1),disabled:i,children:"Cancel"}),(0,t.jsx)(c.Button,{type:"submit",disabled:!a.trim()||i,children:i?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(W.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),"Creating…"]}):"Create project"})]})]})})})}var eP=e.i(917840);let eR={maxZoom:1,padding:.5,duration:500},eI={maxZoom:1,padding:.5,duration:500};function eF({initialNodes:e,initialEdges:n}){let d,u,h,p,f,m,v=(0,a.useRouter)(),y=(0,a.usePathname)(),b=(d=(0,a.usePathname)().match(/^\/feature\/([^/]+)/),d?.[1]??null),w=(u=(0,a.usePathname)(),h=(0,a.useSearchParams)(),p=u.match(/^\/repository\/([^/]+)/),{id:p?.[1]??null,path:u.startsWith("/create")?h.get("repo"):null}),j=(0,ek.useSoundAction)("click"),{guardedNavigate:N}=(0,ej.useDrawerCloseGuard)(),{fitView:E}=(0,r.useReactFlow)(),C=(0,o.useRef)(null),{defaultViewport:S,onMoveEnd:_,resetViewport:D}=(f=(0,o.useRef)(function(){try{let e=localStorage.getItem(eN);if(null==e)return eE;let t=JSON.parse(e);return!(null==t||"object"!=typeof t||Array.isArray(t))&&"number"==typeof t.x&&"number"==typeof t.y&&"number"==typeof t.zoom&&Number.isFinite(t.x)&&Number.isFinite(t.y)&&Number.isFinite(t.zoom)&&t.zoom>0?t:eE}catch{return eE}}()).current,m=(0,o.useRef)(null),(0,o.useEffect)(()=>()=>{null!=m.current&&clearTimeout(m.current)},[]),{defaultViewport:f,onMoveEnd:(0,o.useCallback)(e=>{null!=m.current&&clearTimeout(m.current),m.current=setTimeout(()=>{try{localStorage.setItem(eN,JSON.stringify(e))}catch{}},500)},[]),resetViewport:(0,o.useCallback)(()=>{try{localStorage.removeItem(eN)}catch{}return eE},[])}),{nodes:M,edges:O,onNodesChange:P,handleConnect:R,handleAddRepository:I,handleArchiveFeature:L,handleDeleteFeature:T,handleRetryFeature:A,handleStartFeature:$,handleStopFeature:B,handleUnarchiveFeature:z,handleDeleteRepository:W,handleDeleteApplication:q,createFeatureNode:U,showArchived:H,setShowArchived:V,setCallbacks:X}=(0,eP.useControlCenterState)(e,n),{workspaces:Y,activeWorkspace:J,isDefaultActive:Z,setActiveWorkspace:Q,createWorkspace:ee,renameWorkspace:et,deleteWorkspace:er,setWorkspaceMembers:eo,addToActiveWorkspace:es}=function(){let[e,t]=(0,o.useState)(eh);(0,o.useEffect)(()=>{t(function(){try{let e=window.localStorage.getItem(ec);if(!e)return eh;let t=JSON.parse(e);if(!t.workspaces||!Array.isArray(t.workspaces))return eh;return{workspaces:t.workspaces.some(e=>e.id===eu)?t.workspaces:[eh.workspaces[0],...t.workspaces],activeWorkspaceId:t.activeWorkspaceId??eu}}catch{return eh}}())},[]),(0,o.useEffect)(()=>{try{window.localStorage.setItem(ec,JSON.stringify(e))}catch{}},[e]);let r=(0,o.useCallback)(e=>{t(t=>t.workspaces.some(t=>t.id===e)?{...t,activeWorkspaceId:e}:t)},[]),n=(0,o.useCallback)(e=>{let r=e.trim()||"Untitled workspace",n={id:`ws-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,name:r,repoIds:[],featureIds:[]};return t(e=>({workspaces:[...e.workspaces,n],activeWorkspaceId:n.id})),n},[]),a=(0,o.useCallback)((e,r)=>{if(e===eu)return;let n=r.trim();n&&t(t=>({...t,workspaces:t.workspaces.map(t=>t.id===e?{...t,name:n}:t)}))},[]),s=(0,o.useCallback)(e=>{e!==eu&&t(t=>({workspaces:t.workspaces.filter(t=>t.id!==e),activeWorkspaceId:t.activeWorkspaceId===e?eu:t.activeWorkspaceId}))},[]),i=(0,o.useCallback)((e,r)=>{e!==eu&&t(t=>({...t,workspaces:t.workspaces.map(t=>t.id===e?{...t,repoIds:[...r.repoIds],featureIds:[...r.featureIds]}:t)}))},[]),l=(0,o.useCallback)((e,r)=>{t(t=>t.activeWorkspaceId===eu?t:{...t,workspaces:t.workspaces.map(n=>{if(n.id!==t.activeWorkspaceId)return n;let o="repo"===e?n.repoIds:n.featureIds,a=o.includes(r)?o.filter(e=>e!==r):[...o,r];return"repo"===e?{...n,repoIds:a}:{...n,featureIds:a}})})},[]),d=(0,o.useCallback)(e=>l("repo",e),[l]),c=(0,o.useCallback)(e=>l("feature",e),[l]),u=(0,o.useCallback)(e=>{let r=e.repoIds??[],n=e.featureIds??[];(0!==r.length||0!==n.length)&&t(e=>e.activeWorkspaceId===eu?e:{...e,workspaces:e.workspaces.map(t=>{if(t.id!==e.activeWorkspaceId)return t;let o=new Set(t.repoIds);for(let e of r)o.add(e);let a=new Set(t.featureIds);for(let e of n)a.add(e);return o.size===t.repoIds.length&&a.size===t.featureIds.length?t:{...t,repoIds:Array.from(o),featureIds:Array.from(a)}})})},[]),h=e.workspaces.find(t=>t.id===e.activeWorkspaceId)??e.workspaces[0];return{workspaces:e.workspaces,activeWorkspace:h,activeWorkspaceId:e.activeWorkspaceId,isDefaultActive:e.activeWorkspaceId===eu,setActiveWorkspace:r,createWorkspace:n,renameWorkspace:a,deleteWorkspace:s,setWorkspaceMembers:i,toggleRepoInActive:d,toggleFeatureInActive:c,addToActiveWorkspace:u}}(),ei=(0,o.useRef)(new Set),[el,ed]=(0,o.useState)(!1),[em,ey]=(0,o.useState)(!1),[eb,eC]=(0,o.useState)(!1),[eS,eD]=(0,o.useState)(!1),[eM,eF]=(0,o.useState)(null),[eT,eA]=(0,o.useState)(!1),{setFeatures:e$,setHasRepositories:eB}=(0,ew.useSidebarFeaturesContext)(),ez=(0,o.useMemo)(()=>M.filter(e=>"featureNode"===e.type),[M]),eG=(0,o.useMemo)(()=>ez.map(e=>{let t=e.data;return`${t.featureId}:${t.state}:${t.name}:${t.repositoryPath}`}).sort().join(","),[ez]);(0,o.useEffect)(()=>{e$(ez.map(e=>{let t=e.data,r=(0,ew.mapNodeStateToSidebarStatus)(t.state);if(!r)return null;let n=t.repositoryPath??"";return{featureId:t.featureId,name:t.name,status:r,repositoryPath:n,repositoryName:t.repositoryName??n.split("/").filter(Boolean).pop()??n,...null!=t.startedAt&&{startedAt:t.startedAt},...null!=t.runtime&&{duration:t.runtime},...t.agentType&&{agentType:t.agentType},...t.modelId&&{modelId:t.modelId}}}).filter(Boolean))},[eG,ez,e$]);let eW=(0,o.useCallback)(e=>{N(()=>v.push(`/application/${e}`))},[v,N]),eq=(0,o.useCallback)((e,t)=>{if("featureNode"===t.type){let r=t.data;"creating"!==r.state&&"deleting"!==r.state&&e.target.closest('[data-testid="feature-node-card"]')&&N(()=>{j.play(),v.push(`/feature/${r.featureId}`)})}},[v,j,N]),eU=(0,o.useCallback)(()=>{j.play(),v.push("/create")},[v,j]),eH=(0,o.useCallback)(e=>{j.play();let t=M.find(t=>t.id===e),r=t?.data?.repositoryPath;r?v.push(`/create?repo=${encodeURIComponent(r)}`):v.push("/create")},[M,v,j]),eV=(0,o.useCallback)(e=>{let t=e.startsWith("feat-")?e.slice(5):e,r=O.find(t=>t.target===e),n=r?M.find(e=>e.id===r.source):null,o=n?.data?.repositoryPath;j.play();let a=new URLSearchParams;o&&a.set("repo",o),a.set("parent",t),v.push(`/create?${a.toString()}`)},[M,O,v,j]),eX=(0,o.useCallback)(e=>{let t=M.find(t=>t.id===e);if(t?.type==="repositoryNode"){let e=t.data;e.id&&N(()=>v.push(`/repository/${e.id}`))}},[M,v,N]),eY=(0,o.useCallback)(()=>{"/"!==y&&N(()=>v.push("/"))},[v,y,N]),eJ=(0,o.useCallback)(e=>{setTimeout(()=>{E(eI),C.current=setTimeout(()=>{N(()=>v.push(`/create?repo=${encodeURIComponent(e)}`))},600)},0)},[E,N,v]),eK=(0,o.useCallback)(e=>{setTimeout(()=>{E({nodes:[{id:e}],maxZoom:1,padding:.4,duration:600})},0)},[E]),eZ=(0,o.useCallback)(e=>{let{wasEmpty:t,repoPath:r,tempNodeId:n}=I(e);t?eJ(r):eK(n)},[I,eJ,eK]);!function(e){let{addRepoAndFocus:t,createFeatureNode:r,nodes:n,handleDeleteFeature:a,handleArchiveFeature:s,handleUnarchiveFeature:i}=e;(0,o.useEffect)(()=>{let e=e=>{t(e.detail.path)};return window.addEventListener("shep:add-repository",e),()=>window.removeEventListener("shep:add-repository",e)},[t]),(0,o.useEffect)(()=>{let e=e=>{let t=e.detail;if(t.parentId)return void r(`feat-${t.parentId}`,{state:"creating",featureId:t.featureId,name:t.name,description:t.description,repositoryPath:t.repositoryPath},"dependencyEdge");let o=n.find(e=>"repositoryNode"===e.type&&e.data.repositoryPath===t.repositoryPath);r(o?.id??null,{state:"running",featureId:t.featureId,name:t.name,description:t.description,repositoryPath:t.repositoryPath})};return window.addEventListener("shep:feature-created",e),()=>window.removeEventListener("shep:feature-created",e)},[n,r]),(0,o.useEffect)(()=>{let e=e=>{let{featureId:t,cleanup:r,cascadeDelete:n,closePr:o}=e.detail;a(t,r,n,o)};return window.addEventListener("shep:feature-delete-requested",e),()=>window.removeEventListener("shep:feature-delete-requested",e)},[a]),(0,o.useEffect)(()=>{let e=e=>{let{featureId:t}=e.detail;s(t)};return window.addEventListener("shep:feature-archive-requested",e),()=>window.removeEventListener("shep:feature-archive-requested",e)},[s]),(0,o.useEffect)(()=>{let e=e=>{let{featureId:t}=e.detail;i(t)};return window.addEventListener("shep:feature-unarchive-requested",e),()=>window.removeEventListener("shep:feature-unarchive-requested",e)},[i])}({addRepoAndFocus:eZ,createFeatureNode:U,nodes:M,handleDeleteFeature:T,handleArchiveFeature:L,handleUnarchiveFeature:z}),(0,o.useEffect)(()=>()=>{null!=C.current&&clearTimeout(C.current)},[]),(0,o.useEffect)(()=>{X({onNodeAction:eV,onFeatureDelete:T,onRetryFeature:A,onStartFeature:$,onStopFeature:B,onArchiveFeature:L,onUnarchiveFeature:z,onRepositoryAdd:eH,onRepositoryClick:eX,onRepositoryDelete:W,onApplicationClick:eW,onApplicationDelete:q})},[X,eV,L,T,A,$,B,z,eH,eX,W,eW,q]);let eQ=(0,o.useCallback)((e,t)=>{_(t)},[_]),e0=M.some(e=>"repositoryNode"===e.type),e1=e0||M.some(e=>"applicationNode"===e.type);(0,o.useEffect)(()=>{eB(e0)},[e0,eB]);let[e2,e5]=(0,o.useState)(e1),e3=(0,o.useRef)(null);(0,o.useEffect)(()=>(e1?(e3.current&&(clearTimeout(e3.current),e3.current=null),e5(!0)):e2&&(D(),e3.current=setTimeout(()=>{e5(!1),e3.current=null},500)),()=>{e3.current&&clearTimeout(e3.current)}),[e1,e2,D]),(0,o.useEffect)(()=>{let e=ei.current,t=[],r=[];for(let n of M)e.has(n.id)||(e.add(n.id),"repositoryNode"===n.type?t.push(n.id):"featureNode"===n.type&&r.push(n.id));Z||(0!==t.length||0!==r.length)&&es({repoIds:t,featureIds:r})},[M,Z,es]);let e4=(0,o.useMemo)(()=>{if(Z)return M;let e=new Set(J.repoIds),t=new Set(J.featureIds);return M.filter(r=>"repositoryNode"===r.type?e.has(r.id):"featureNode"!==r.type||t.has(r.id))},[M,Z,J]),e6=(0,o.useMemo)(()=>{if(Z)return O;let e=new Set(e4.map(e=>e.id));return O.filter(t=>e.has(t.source)&&e.has(t.target))},[O,Z,e4]),e8=y.startsWith("/create"),e7=(0,o.useMemo)(()=>{let e=e4.filter(e=>"repositoryNode"===e.type),t=e4.some(e=>"featureNode"===e.type);return 1!==e.length||t||e8?e4:e4.map(e=>"repositoryNode"===e.type?{...e,data:{...e.data,pulseAdd:!0}}:e)},[e4,e8]),e9=(0,o.useCallback)(()=>{window.dispatchEvent(new CustomEvent("shep:pick-folder"))},[]);!function(e){let{activeWorkspace:t,isDefaultActive:r,workspaceFilteredNodes:n,fitView:a}=e,s=(0,o.useMemo)(()=>{if(r)return"default";let e=n.map(e=>e.id).sort().join(",");return`${t.id}:${e}`},[r,t.id,n]),i=(0,o.useRef)(null);(0,o.useEffect)(()=>{let e=i.current;if(i.current=s,null===e||e===s||r||0===n.length)return;let t=setTimeout(()=>{a(eR)},0);return()=>clearTimeout(t)},[s,r,n.length,a])}({activeWorkspace:J,isDefaultActive:Z,workspaceFilteredNodes:e4,fitView:E});let te=e1&&!Z&&0===e4.length,tt=te?(0,t.jsxs)("div",{className:"pointer-events-auto flex h-full w-full flex-col items-center justify-center px-8",children:[(0,t.jsx)("div",{className:"bg-primary/10 text-primary mb-5 flex h-12 w-12 items-center justify-center rounded-2xl",children:(0,t.jsx)(ea.Layers,{className:"h-6 w-6"})}),(0,t.jsx)("h2",{className:"text-foreground/90 text-center text-2xl font-light tracking-tight",children:"This workspace is empty"}),(0,t.jsx)("p",{className:"text-muted-foreground mt-2 max-w-sm text-center text-sm leading-relaxed",children:"Add repositories or features from the canvas, or switch back to the default workspace to see everything."}),(0,t.jsxs)("div",{className:"mt-6 flex items-center gap-2",children:[(0,t.jsxs)(c.Button,{size:"sm",onClick:()=>eA(!0),className:"bg-blue-500 text-white hover:bg-blue-600",children:[(0,t.jsx)(s.FolderPlus,{className:"me-1.5 h-3.5 w-3.5"}),"New project"]}),(0,t.jsxs)(c.Button,{variant:"outline",size:"sm",onClick:()=>ed(!0),children:[(0,t.jsx)(i.Plus,{className:"me-1.5 h-3.5 w-3.5"}),"Manage items"]}),(0,t.jsx)(c.Button,{variant:"ghost",size:"sm",onClick:()=>Q(eu),children:"Switch to Default"})]})]}):(0,t.jsx)(e_.ControlCenterEmptyState,{onRepositorySelect:eZ,onApplicationCreated:e=>{v.push(`/application/${e}`)}}),[tr,tn]=(0,o.useState)(!1),to=function({router:e,clickSound:r,guardedNavigate:n,handlePickFolder:a,onNewProject:i,onNewApplication:d,featureFlags:c}){let{t:u}=(0,l.useTranslation)("web");return(0,o.useMemo)(()=>{let o=[{id:"new-project",label:"New project",icon:(0,t.jsx)(s.FolderPlus,{className:"h-4 w-4"}),onClick:()=>{r.play(),i()}},{id:"new-feature",label:u("fab.newFeature"),icon:(0,t.jsx)(ef.Sparkles,{className:"h-4 w-4"}),onClick:()=>{r.play(),n(()=>e.push("/create"))}},{id:"add-local-repo",label:u("fab.localFolder"),icon:(0,t.jsx)(x.FolderOpen,{className:"h-4 w-4"}),onClick:a},{id:"new-application",label:u("fab.newApplication"),icon:(0,t.jsx)(G.LayoutGrid,{className:"h-4 w-4"}),onClick:d}];return c.adoptBranch&&o.push({id:"adopt-branch",label:u("fab.adoptBranch"),icon:(0,t.jsx)(k.GitBranch,{className:"h-4 w-4"}),onClick:()=>{n(()=>e.push("/adopt"))}}),c.githubImport&&o.push({id:"add-github-repo",label:u("fab.fromGithub"),icon:(0,t.jsx)(g,{className:"h-4 w-4"}),onClick:()=>{window.dispatchEvent(new CustomEvent("shep:open-github-import"))}}),o},[u,r,n,e,a,i,d,c.adoptBranch,c.githubImport])}({router:v,clickSound:j,guardedNavigate:N,handlePickFolder:e9,onNewProject:()=>eA(!0),onNewApplication:()=>tn(!0),featureFlags:(0,F.useFeatureFlags)()}),ta=(0,t.jsx)(en,{showArchived:H,onToggleArchived:()=>V(!H),onResetViewport:D,startSlot:(0,t.jsx)(ep,{workspaces:Y,activeWorkspace:J,onSelect:Q,onRequestCreate:()=>ey(!0),onRequestRename:()=>eC(!0),onRequestDelete:e=>{eF(e),eD(!0)},onManage:()=>ed(!0)})});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(K,{nodes:e2?e7:[],edges:e2?e6:[],selectedFeatureId:b,selectedRepository:w,defaultViewport:S,onNodesChange:P,onConnect:R,onAddFeature:eU,onNodeClick:eq,onPaneClick:eY,onMoveEnd:eQ,toolbar:ta,showToolbarOnEmpty:te,emptyState:tt}),e2?(0,t.jsx)(eL,{actions:to}):null,(0,t.jsx)(eO,{open:eT,onOpenChange:eA,onCreated:e=>eZ(e)}),(0,t.jsx)(eg,{open:el,onOpenChange:ed,workspace:J,allNodes:M,onSave:e=>eo(J.id,e)}),(0,t.jsx)(ev,{open:em,onOpenChange:ey,title:"New workspace",description:"Create a workspace to filter the canvas to a specific set of repositories and features.",confirmLabel:"Create",onConfirm:e=>{ee(e),ed(!0)}}),(0,t.jsx)(ev,{open:eb,onOpenChange:eC,title:"Rename workspace",initialValue:J.name,confirmLabel:"Rename",onConfirm:e=>et(J.id,e)}),(0,t.jsx)(ex.AlertDialog,{open:eS,onOpenChange:e=>{eD(e),e||eF(null)},children:(0,t.jsxs)(ex.AlertDialogContent,{children:[(0,t.jsxs)(ex.AlertDialogHeader,{children:[(0,t.jsx)(ex.AlertDialogTitle,{children:"Delete workspace?"}),(0,t.jsxs)(ex.AlertDialogDescription,{children:["This will permanently remove the workspace “",Y.find(e=>e.id===eM)?.name??J.name,"”. The repositories and features themselves are not affected."]})]}),(0,t.jsxs)(ex.AlertDialogFooter,{children:[(0,t.jsx)(ex.AlertDialogCancel,{children:"Cancel"}),(0,t.jsx)(ex.AlertDialogAction,{variant:"destructive",onClick:()=>{eM&&(er(eM),eF(null))},children:"Delete"})]})]})}),tr?(0,t.jsx)("div",{className:"absolute inset-0 z-50",children:(0,t.jsx)(e_.ControlCenterEmptyState,{onRepositorySelect:e=>{tn(!1),eZ(e)},onApplicationCreated:e=>{v.push(`/application/${e}`)},onClose:()=>tn(!1),className:"bg-background"})}):null]})}function eL({actions:e}){let{state:r}=(0,eC.useSidebar)(),{i18n:n}=(0,l.useTranslation)("web"),{swapPosition:o}=(0,eS.useFabLayout)(),a="rtl"===n.dir();if(o)return(0,t.jsx)(eb,{actions:e,className:"!fixed bottom-6",style:a?{left:"calc(var(--sidebar-width-icon) + 32px)",transition:"left 200ms ease-in-out"}:{right:"32px",transition:"right 200ms ease-in-out"}});let s="expanded"===r?"calc(var(--sidebar-width) + 32px)":"calc(var(--sidebar-width-icon) + 32px)";return(0,t.jsx)(eb,{actions:e,className:"!fixed bottom-6",style:a?{right:s,transition:"right 200ms ease-in-out"}:{left:s,transition:"left 200ms ease-in-out"}})}function eT({initialNodes:e,initialEdges:o,drawer:a}){return(0,t.jsxs)("div",{"data-testid":"control-center",className:"h-full w-full",children:[(0,t.jsx)(n.SessionsProvider,{children:(0,t.jsx)(r.ReactFlowProvider,{children:(0,t.jsx)(eF,{initialNodes:e,initialEdges:o})})}),(0,t.jsx)("div",{children:a},"drawer")]})}e.s(["ControlCenter",()=>eT],948246)},22173,e=>{"use strict";var t=e.i(873504),r=e.i(481605);e.s(["DeploymentStatusProvider",()=>t.DeploymentStatusProvider,"EMPTY_ENTRY",()=>r.EMPTY_ENTRY,"useDeploymentStatusContext",()=>t.useDeploymentStatusContext,"useDeploymentStatusContextOptional",()=>t.useDeploymentStatusContextOptional])}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,730702,e=>{"use strict";let t=(0,e.i(903645).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",()=>t],730702)},724042,64970,e=>{"use strict";var t=e.i(903645);let a=(0,t.default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);e.s(["Play",()=>a],724042);let s=(0,t.default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);e.s(["Square",()=>s],64970)},873504,481605,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(317406),l=e.i(508893);let r=(0,l.createServerReference)("40026de899f93ce7cd1fdf1a0ee013dad77cdc4f03",l.callServer,void 0,l.findSourceMapURL,"deployFeature"),n=(0,l.createServerReference)("40108be7384990f668028a97284b5ae9db570b1965",l.callServer,void 0,l.findSourceMapURL,"deployRepository"),i=(0,l.createServerReference)("406e6f424ebf1e3b734864e08e09226a559105f605",l.callServer,void 0,l.findSourceMapURL,"deployApplication"),o=(0,l.createServerReference)("40425dc4804963cdc2f5af0bdc1e7594e877baaf11",l.callServer,void 0,l.findSourceMapURL,"stopDeployment"),c=(0,l.createServerReference)("40eb5c7ddaa143cbe9dc2c73f7bb19a5d89b533a7d",l.callServer,void 0,l.findSourceMapURL,"getDeploymentStatus");var d=e.i(118354);let u={status:null,url:null,targetType:null,hydrated:!1,deployLoading:!1,stopLoading:!1,deployError:null};class m{entries=new Map;listeners=new Map;globalListeners=new Set;hydrate(e){let t=new Set;for(let a of e)t.add(a.targetId),this.update(a.targetId,{status:a.state,url:a.url,targetType:a.targetType,hydrated:!0});for(let[e,a]of this.entries)!t.has(e)&&a.hydrated&&null!==a.status?this.update(e,{status:null,url:null}):t.has(e)||a.hydrated||this.update(e,{hydrated:!0})}getEntry(e){return this.entries.get(e)??u}update(e,t){let a={...this.entries.get(e)??u,...t};this.entries.set(e,a),this.notify(e)}setStatus(e,t){null===t?this.update(e,{status:null,url:null,hydrated:!0}):this.update(e,{status:t.state,url:t.url,hydrated:!0})}subscribe(e,t){let a=this.listeners.get(e);return a||(a=new Set,this.listeners.set(e,a)),a.add(t),()=>{a?.delete(t),a?.size===0&&this.listeners.delete(e)}}subscribeAll(e){return this.globalListeners.add(e),()=>{this.globalListeners.delete(e)}}notify(e){let t=this.listeners.get(e);if(t)for(let e of t)e();for(let e of this.globalListeners)e()}}e.s(["DeploymentStatusStore",()=>m,"EMPTY_ENTRY",0,u],481605);let x=(0,d.createLogger)("[DeploymentStatusProvider]"),p=new Set([s.DeploymentState.Booting,s.DeploymentState.Ready]),h=(0,a.createContext)(null);function g({initialDeployments:e,children:l}){let d=(0,a.useRef)(null);d.current||(d.current=new m,d.current.hydrate(e));let u=d.current;(0,a.useEffect)(()=>{u.hydrate(e)},[e,u]);let g=(0,a.useRef)(new Map),f=(0,a.useCallback)(e=>{let t=g.current.get(e);t&&(clearInterval(t),g.current.delete(e))},[]),y=(0,a.useCallback)(e=>{if(g.current.has(e))return;let t=setInterval(async()=>{let t;try{t=await c(e)}catch(t){x.warn(`poll failed for "${e}"`,t),u.setStatus(e,null),f(e);return}if(!t||t.state===s.DeploymentState.Stopped){u.setStatus(e,null),f(e);return}u.setStatus(e,t)},3e3);g.current.set(e,t)},[u,f]);(0,a.useEffect)(()=>{let e=g.current,t=u.subscribeAll(()=>{for(let[t]of e){let e=u.getEntry(t);e.status&&p.has(e.status)||f(t)}});return()=>{for(let[,a]of(t(),e))clearInterval(a);e.clear()}},[u,f]);let b=(0,a.useCallback)(e=>{!e||u.getEntry(e).hydrated||(u.update(e,{hydrated:!0}),(async()=>{try{let t=await c(e);u.setStatus(e,t),t&&p.has(t.state)&&y(e)}catch(t){x.warn(`ensureHydrated failed for "${e}"`,t)}})())},[u,y]),j=(0,a.useCallback)(async e=>{u.update(e.targetId,{deployLoading:!0,deployError:null});try{let t="feature"===e.targetType?await r(e.targetId):"application"===e.targetType?await i(e.targetId):await n(e.repositoryPath);if(!t.success)return void u.update(e.targetId,{deployLoading:!1,deployError:t.error??"An unexpected error occurred"});u.update(e.targetId,{deployLoading:!1,status:t.state??null,url:null,hydrated:!0,targetType:e.targetType}),y(e.targetId)}catch(a){let t=a instanceof Error?a.message:"An unexpected error occurred";u.update(e.targetId,{deployLoading:!1,deployError:t})}},[u,y]),v=(0,a.useCallback)(async e=>{if(e){u.update(e,{stopLoading:!0});try{(await o(e)).success?(f(e),u.update(e,{stopLoading:!1,status:null,url:null})):u.update(e,{stopLoading:!1})}catch(t){x.warn("stop error (non-critical)",t),u.update(e,{stopLoading:!1})}}},[u,f]),N=(0,a.useMemo)(()=>({store:u,deploy:j,stop:v,ensureHydrated:b}),[u,j,v,b]);return(0,t.jsx)(h.Provider,{value:N,children:l})}function f(){let e=(0,a.useContext)(h);if(!e)throw Error("useDeploymentStatusContext must be used within a <DeploymentStatusProvider>");return e}function y(){let e=(0,a.useContext)(h);return e||b}let b={store:new m,deploy:async()=>{},stop:async()=>{},ensureHydrated:()=>{}};e.s(["DeploymentStatusProvider",()=>g,"useDeploymentStatusContext",()=>f,"useDeploymentStatusContextOptional",()=>y],873504)},8537,e=>{"use strict";var t=e.i(152155),a=e.i(873504);function s(){}function l(e){let{store:l,deploy:r,stop:n,ensureHydrated:i}=(0,a.useDeploymentStatusContextOptional)(),o=e?.targetId??"",c=(0,t.useCallback)(e=>o?l.subscribe(o,e):s,[l,o]),d=(0,t.useCallback)(()=>o?l.getEntry(o):l.getEntry(""),[l,o]),u=(0,t.useSyncExternalStore)(c,d,d);return(0,t.useEffect)(()=>{o&&i(o)},[o,i]),{deploy:(0,t.useCallback)(async()=>{e&&await r(e)},[r,e]),stop:(0,t.useCallback)(async()=>{o&&await n(o)},[n,o]),deployLoading:u.deployLoading,stopLoading:u.stopLoading,deployError:u.deployError,status:u.status,url:u.url}}e.s(["useDeployAction",()=>l])},338573,e=>{"use strict";let t=(0,e.i(903645).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>t],338573)},949228,e=>{"use strict";let t=(0,e.i(903645).default)("git-branch",[["line",{x1:"6",x2:"6",y1:"3",y2:"15",key:"17qcm7"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["path",{d:"M18 9a9 9 0 0 1-9 9",key:"n2h4wq"}]]);e.s(["GitBranch",()=>t],949228)},681181,e=>{"use strict";var t=e.i(295230);e.s(["Download",()=>t.default])},435e3,e=>{"use strict";var t=e.i(980986);e.s(["CheckCircle2",()=>t.default])},993192,e=>{"use strict";let t=(0,e.i(903645).default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);e.s(["Package",()=>t],993192)},909388,e=>{"use strict";let t=(0,e.i(903645).default)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);e.s(["Monitor",()=>t],909388)},483902,e=>{"use strict";let t=(0,e.i(903645).default)("rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]);e.s(["Rocket",()=>t],483902)},144412,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(181975),l=e.i(468304),r=e.i(131777),n=e.i(83428),i=e.i(483902),o=e.i(681181),c=e.i(909388),d=e.i(338573),u=e.i(949228),m=e.i(954277),x=e.i(495812),p=e.i(435e3),h=e.i(993192),g=e.i(735364),f=e.i(102828),y=e.i(433548),b=e.i(723925),j=e.i(730702),v=e.i(511495);let N={linux:"Linux",darwin:"macOS",win32:"Windows"},k={ide:{label:"IDE",icon:c.Monitor},"cli-agent":{label:"CLI Agent",icon:d.Terminal},vcs:{label:"VCS",icon:u.GitBranch},terminal:{label:"Terminal",icon:d.Terminal}};function w({status:e}){return"available"===e?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-emerald-100 px-2 py-0.5 text-xs font-medium text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400",children:[(0,t.jsx)(b.Check,{className:"h-3 w-3"}),"Installed"]}):"error"===e?(0,t.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full bg-red-100 px-2 py-0.5 text-xs font-medium text-red-700 dark:bg-red-900/30 dark:text-red-400",children:"Error"}):(0,t.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full bg-amber-100 px-2 py-0.5 text-xs font-medium text-amber-700 dark:bg-amber-900/30 dark:text-amber-400",children:"Missing"})}function S({tool:e,open:s,onClose:l,onRefresh:r,autoStart:d}){let[u,m]=(0,a.useState)(!1),[x,p]=(0,a.useState)(!1),{logs:f,status:S,startInstall:C}=function(e){let[t,s]=(0,a.useState)([]),[l,r]=(0,a.useState)("idle"),[n,i]=(0,a.useState)(null),o=(0,a.useRef)(null),c=(0,a.useCallback)(()=>{o.current&&(o.current.close(),o.current=null)},[]);return(0,a.useEffect)(()=>c,[c]),{logs:t,status:l,result:n,startInstall:(0,a.useCallback)(()=>{c(),s([]),i(null),r("streaming");let t=new EventSource(`/api/tools/${e}/install/stream`);o.current=t,t.onmessage=e=>{s(t=>[...t,e.data])},t.addEventListener("done",e=>{let t=JSON.parse(e.data);i(t),r("error"===t.status?"error":"done"),c()}),t.onerror=()=>{r("error"),c()}},[e,c])}}(e.id),T=(0,a.useRef)(null),L=(0,a.useRef)(!0),I=(0,a.useRef)(!1),E="available"===e.status.status,M="error"===e.status.status,R=E&&!!e.openDirectory,D=!E&&!M&&e.autoInstall;async function z(){p(!0);try{await fetch(`/api/tools/${e.id}/launch`,{method:"POST"})}finally{p(!1)}}(0,a.useEffect)(()=>{s&&d&&D&&"idle"===S&&!I.current&&(I.current=!0,C()),s||(I.current=!1)},[s,d,D,S,C]);let P=(0,a.useCallback)(()=>{let e=T.current;e&&(L.current=e.scrollTop+e.clientHeight>=e.scrollHeight-50)},[]);(0,a.useEffect)(()=>{L.current&&T.current&&(T.current.scrollTop=T.current.scrollHeight)},[f,S]),(0,a.useEffect)(()=>{"done"===S&&r&&r()},[S,r]);let A=(0,t.jsxs)("div",{className:"flex flex-col gap-1.5 pe-6",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[e.iconUrl?(0,t.jsx)("img",{src:e.iconUrl,alt:"",width:24,height:24,className:"shrink-0 dark:invert"}):(0,t.jsx)(h.Package,{className:"text-muted-foreground h-6 w-6 shrink-0"}),(0,t.jsx)("h2",{className:"text-base font-bold",children:e.name}),(0,t.jsx)(w,{status:e.status.status})]}),(0,t.jsx)("div",{className:"flex items-center gap-2",children:e.tags.map(e=>{let a=k[e]??{label:e,icon:c.Monitor},s=a.icon;return(0,t.jsxs)("span",{className:"text-muted-foreground/70 inline-flex items-center gap-0.5 text-[10px]",children:[(0,t.jsx)(s,{className:"h-3 w-3"}),a.label]},e)})})]});return(0,t.jsx)(v.BaseDrawer,{open:s,onClose:l,size:"md",modal:!0,title:e.name,header:A,"data-testid":"tool-detail-drawer",children:(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-4 overflow-y-auto p-4",children:[(0,t.jsx)("p",{className:"text-muted-foreground text-sm",children:e.description}),e.author||e.platforms?(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-1 text-xs",children:[e.author?(0,t.jsxs)("span",{className:"text-muted-foreground",children:["by"," ",e.website?(0,t.jsx)("a",{href:e.website,target:"_blank",rel:"noopener noreferrer",className:"text-foreground hover:underline",children:e.author}):(0,t.jsx)("span",{className:"text-foreground",children:e.author})]}):null,e.platforms&&e.platforms.length>0?(0,t.jsx)("span",{className:"text-muted-foreground",children:e.platforms.map(e=>N[e]??e).join(" · ")}):null]}):null,e.installCommand?(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-muted-foreground text-xs font-semibold tracking-wide uppercase",children:"Install command"}),(0,t.jsxs)("div",{className:"relative rounded-md bg-zinc-900 text-zinc-100",children:[(0,t.jsx)("pre",{className:"overflow-x-auto px-3 py-2.5 pe-16 font-mono text-xs leading-relaxed break-all whitespace-pre-wrap",children:(0,t.jsx)("code",{children:e.installCommand})}),(0,t.jsxs)(g.Button,{variant:"ghost",size:"sm",className:"absolute top-1.5 right-1.5 h-7 cursor-pointer px-2 text-zinc-400 hover:text-zinc-100",onClick:function(){e.installCommand&&navigator.clipboard.writeText(e.installCommand).then(()=>{m(!0),setTimeout(()=>m(!1),2e3)})},"aria-label":u?"Copied!":"Copy install command",children:[u?(0,t.jsx)(b.Check,{className:"h-3.5 w-3.5 text-emerald-500"}):(0,t.jsx)(y.Copy,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"ms-1 text-[10px]",children:u?"Copied!":"Copy"})]})]})]}):null,(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[D?(0,t.jsxs)(g.Button,{size:"sm",onClick:C,disabled:"streaming"===S,"aria-label":`Install ${e.name}`,className:"cursor-pointer",children:["streaming"===S?(0,t.jsx)(n.Loader2,{className:"me-1.5 h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(o.Download,{className:"me-1.5 h-3.5 w-3.5"}),"streaming"===S?"Installing...":"Install"]}):null,R?(0,t.jsxs)(g.Button,{size:"sm",variant:"outline",onClick:()=>void z(),disabled:x,"aria-label":`Launch ${e.name}`,className:"cursor-pointer",children:[x?(0,t.jsx)(n.Loader2,{className:"me-1.5 h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(i.Rocket,{className:"me-1.5 h-3.5 w-3.5"}),"Launch"]}):null,e.documentationUrl?(0,t.jsx)(g.Button,{variant:"outline",size:"sm",className:"cursor-pointer",asChild:!0,children:(0,t.jsxs)("a",{href:e.documentationUrl,target:"_blank",rel:"noopener noreferrer",children:["Docs",(0,t.jsx)(j.ExternalLink,{className:"ms-1 h-3 w-3"})]})}):null]}),("streaming"===S||"done"===S||"error"===S)&&f.length>0?(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-muted-foreground text-xs font-semibold tracking-wide uppercase",children:"Install log"}),(0,t.jsxs)("div",{ref:T,onScroll:P,className:"max-h-60 overflow-auto rounded-md bg-zinc-900 p-3 font-mono text-xs leading-relaxed text-zinc-100","data-testid":"tool-install-log",children:[f.map((e,a)=>(0,t.jsx)("div",{className:"break-all whitespace-pre-wrap",children:e},a)),"done"===S?(0,t.jsx)("div",{className:"mt-2 border-t border-zinc-700 pt-2 text-emerald-400",children:"Installation complete"}):null,"error"===S?(0,t.jsx)("div",{className:"mt-2 border-t border-zinc-700 pt-2 text-red-400",children:"Installation failed"}):null]})]}):null]})})}let C={ide:{label:"IDE",icon:c.Monitor},"cli-agent":{label:"CLI Agent",icon:d.Terminal},vcs:{label:"VCS",icon:u.GitBranch},terminal:{label:"Terminal",icon:d.Terminal}};function T({tool:e,onRefresh:s,className:l}){let[d,u]=(0,a.useState)(!1),[y,b]=(0,a.useState)(!1),[j,v]=(0,a.useTransition)(),N="available"===e.status.status,k="error"===e.status.status,w=N&&!!e.openDirectory;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{"data-testid":"tool-card",onClick:function(){b(!1),u(!0)},className:(0,r.cn)("bg-card group flex h-30 w-full cursor-pointer flex-col rounded-lg border p-3 transition-shadow hover:shadow-md",l),children:[(0,t.jsxs)("div",{className:"mb-2 flex items-start justify-between gap-2",children:[(0,t.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[e.iconUrl?(0,t.jsx)("img",{src:e.iconUrl,alt:"",width:20,height:20,className:"shrink-0 dark:invert"}):(0,t.jsx)(h.Package,{className:"text-muted-foreground h-5 w-5 shrink-0"}),(0,t.jsx)("h3",{"data-testid":"tool-card-name",className:"truncate text-sm font-bold",children:e.name})]}),(0,t.jsx)("div",{"data-testid":"tool-card-tags",className:"flex shrink-0 items-center gap-1",children:e.tags.map(e=>{let a=C[e]??{label:e,icon:c.Monitor},s=a.icon;return(0,t.jsxs)("span",{className:"text-muted-foreground/70 inline-flex items-center gap-0.5 text-[9px]",children:[(0,t.jsx)(s,{className:"h-2.5 w-2.5"}),a.label]},e)})})]}),(0,t.jsx)("p",{"data-testid":"tool-card-summary",className:"text-muted-foreground mt-1 truncate text-xs",children:e.summary}),(0,t.jsxs)("div",{className:"mt-auto flex items-center justify-between pt-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[k&&"error"===e.status.status?(0,t.jsxs)("span",{className:"flex items-center gap-1 truncate text-[10px] text-red-600 dark:text-red-400",title:e.status.errorMessage,children:[(0,t.jsx)(m.CircleX,{className:"h-3 w-3 shrink-0"}),e.status.errorMessage??"Error"]}):N?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-[10px] text-emerald-600 dark:text-emerald-400",children:[(0,t.jsx)(p.CheckCircle2,{className:"h-3 w-3"}),"Installed"]}):(0,t.jsxs)("span",{className:"text-muted-foreground flex items-center gap-1 text-[10px]",children:[(0,t.jsx)(x.Circle,{className:"h-3 w-3"}),"Not installed"]}),e.required?(0,t.jsx)(f.TooltipProvider,{children:(0,t.jsxs)(f.Tooltip,{children:[(0,t.jsx)(f.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{className:"rounded bg-amber-100 px-1.5 py-0.5 text-[9px] font-medium text-amber-700 dark:bg-amber-900/50 dark:text-amber-400",children:"Required"})}),(0,t.jsx)(f.TooltipContent,{side:"top",children:"This tool is required for Shep to function properly"})]})}):null]}),(0,t.jsx)("div",{className:"flex items-center gap-1",children:N&&w?(0,t.jsxs)(g.Button,{size:"sm",variant:"outline",onClick:function(t){t.stopPropagation(),v(async()=>{await fetch(`/api/tools/${e.id}/launch`,{method:"POST"})})},disabled:j,"aria-label":`Launch ${e.name}`,"data-testid":"tool-card-launch-button",className:"h-7 cursor-pointer rounded-md px-3 text-xs",children:[j?(0,t.jsx)(n.Loader2,{className:"me-1 h-3 w-3 animate-spin"}):(0,t.jsx)(i.Rocket,{className:"me-1 h-3 w-3"}),"Launch"]}):N||k?null:(0,t.jsxs)(g.Button,{size:"sm",variant:"default",onClick:function(t){t.stopPropagation(),b(e.autoInstall),u(!0)},"aria-label":`Install ${e.name}`,"data-testid":"tool-card-install-button",className:"h-7 cursor-pointer rounded-md px-3 text-xs",children:[(0,t.jsx)(o.Download,{className:"me-1 h-3 w-3"}),"Install"]})})]})]}),(0,t.jsx)(S,{tool:e,open:d,onClose:()=>u(!1),onRefresh:s,autoStart:y})]})}let L={all:()=>!0,ide:e=>e.tags.includes("ide"),"cli-agent":e=>e.tags.includes("cli-agent"),vcs:e=>e.tags.includes("vcs"),terminal:e=>e.tags.includes("terminal")};function I({tools:e,className:n}){let[i,o]=(0,a.useState)(e),[c,d]=(0,a.useState)("all"),u=(0,a.useCallback)(async()=>{try{let e=await fetch("/api/tools");if(e.ok){let t=await e.json();o(t)}}catch{}},[]),m=i.filter(L[c]);return(0,t.jsxs)("div",{"data-testid":"tools-page-client",className:(0,r.cn)("space-y-4",n),children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(s.Wrench,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:"Tools"}),(0,t.jsxs)("span",{className:"text-muted-foreground text-[10px]",children:[i.filter(e=>"available"===e.status.status).length,"/",i.length," installed"]})]}),(0,t.jsxs)(l.Tabs,{value:c,onValueChange:e=>d(e),"data-testid":"tools-page-tabs",children:[(0,t.jsxs)(l.TabsList,{className:"h-7",children:[(0,t.jsx)(l.TabsTrigger,{value:"all","data-testid":"tools-tab-all",className:"px-2.5 text-xs",children:"All"}),(0,t.jsx)(l.TabsTrigger,{value:"ide","data-testid":"tools-tab-ide",className:"px-2.5 text-xs",children:"IDEs"}),(0,t.jsx)(l.TabsTrigger,{value:"cli-agent","data-testid":"tools-tab-cli-agent",className:"px-2.5 text-xs",children:"CLI Agents"}),(0,t.jsx)(l.TabsTrigger,{value:"vcs","data-testid":"tools-tab-vcs",className:"px-2.5 text-xs",children:"Version Control"}),(0,t.jsx)(l.TabsTrigger,{value:"terminal","data-testid":"tools-tab-terminal",className:"px-2.5 text-xs",children:"Terminals"})]}),(0,t.jsx)(l.TabsContent,{value:c,className:"mt-3",children:0===m.length?(0,t.jsxs)("div",{"data-testid":"tools-page-empty",className:"text-muted-foreground flex flex-col items-center justify-center py-12 text-center",children:[(0,t.jsx)(s.Wrench,{className:"mb-2 h-6 w-6 opacity-20"}),(0,t.jsx)("p",{className:"text-xs",children:"No tools in this category."})]}):(0,t.jsx)("div",{"data-testid":"tools-page-grid",className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",children:m.map(e=>(0,t.jsx)(T,{tool:e,onRefresh:u},e.id))})})]})]})}e.s(["ToolsPageClient",()=>I],144412)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,43416,e=>{"use strict";let t=(0,e.i(903645).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",()=>t],43416)},216868,442076,e=>{"use strict";var t=e.i(943698);async function a(){let e=await fetch("/api/dialog/pick-files",{method:"POST"});if(!e.ok)throw Error("Failed to open file dialog");let t=await e.json();return t.cancelled?null:t.files}e.s(["PaperclipIcon",()=>t.default],216868),e.s(["pickFiles",()=>a],442076)},283843,e=>{"use strict";let t=(0,e.i(903645).default)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]);e.s(["ChevronsUpDown",()=>t],283843)},951911,e=>{"use strict";var t=e.i(679606),a=e.i(152155),r=e.i(291967),i=e.i(205978),s=e.i(922528),o=e.i(936589),c=e.i(23405),n=e.i(277624),d=e.i(287620),l="Switch",[u,p]=(0,s.createContextScope)(l),[h,f]=u(l),b=a.forwardRef((e,s)=>{let{__scopeSwitch:c,name:n,checked:u,defaultChecked:p,required:f,disabled:b,value:k="on",onCheckedChange:m,form:v,...y}=e,[x,S]=a.useState(null),C=(0,i.useComposedRefs)(s,e=>S(e)),R=a.useRef(!1),P=!x||v||!!x.closest("form"),[j,z]=(0,o.useControllableState)({prop:u,defaultProp:p??!1,onChange:m,caller:l});return(0,t.jsxs)(h,{scope:c,checked:j,disabled:b,children:[(0,t.jsx)(d.Primitive.button,{type:"button",role:"switch","aria-checked":j,"aria-required":f,"data-state":g(j),"data-disabled":b?"":void 0,disabled:b,value:k,...y,ref:C,onClick:(0,r.composeEventHandlers)(e.onClick,e=>{z(e=>!e),P&&(R.current=e.isPropagationStopped(),R.current||e.stopPropagation())})}),P&&(0,t.jsx)(w,{control:x,bubbles:!R.current,name:n,value:k,checked:j,required:f,disabled:b,form:v,style:{transform:"translateX(-100%)"}})]})});b.displayName=l;var k="SwitchThumb",m=a.forwardRef((e,a)=>{let{__scopeSwitch:r,...i}=e,s=f(k,r);return(0,t.jsx)(d.Primitive.span,{"data-state":g(s.checked),"data-disabled":s.disabled?"":void 0,...i,ref:a})});m.displayName=k;var w=a.forwardRef(({__scopeSwitch:e,control:r,checked:s,bubbles:o=!0,...d},l)=>{let u=a.useRef(null),p=(0,i.useComposedRefs)(u,l),h=(0,c.usePrevious)(s),f=(0,n.useSize)(r);return a.useEffect(()=>{let e=u.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(h!==s&&t){let a=new Event("click",{bubbles:o});t.call(e,s),e.dispatchEvent(a)}},[h,s,o]),(0,t.jsx)("input",{type:"checkbox","aria-hidden":!0,defaultChecked:s,...d,tabIndex:-1,ref:p,style:{...d.style,...f,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function g(e){return e?"checked":"unchecked"}w.displayName="SwitchBubbleInput",e.s(["Root",()=>b,"Switch",()=>b,"SwitchThumb",()=>m,"Thumb",()=>m,"createSwitchScope",()=>p],595291);var v=e.i(595291),v=v,y=e.i(131777);function x({className:e,size:a="default",...r}){return(0,t.jsx)(v.Root,{"data-slot":"switch","data-size":a,className:(0,y.cn)("peer group/switch focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80 inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6",e),...r,children:(0,t.jsx)(v.Thumb,{"data-slot":"switch-thumb",className:(0,y.cn)("bg-background dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground pointer-events-none block rounded-full ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0 rtl:data-[state=checked]:-translate-x-[calc(100%-2px)]")})})}e.s(["Switch",()=>x],951911)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,903645,e=>{"use strict";var t=e.i(152155);let n=(...e)=>e.filter((e,t,n)=>!!e&&""!==e.trim()&&n.indexOf(e)===t).join(" ").trim(),r=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var o={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let i=(0,t.forwardRef)(({color:e="currentColor",size:r=24,strokeWidth:i=2,absoluteStrokeWidth:a,className:l="",children:c,iconNode:u,...s},f)=>(0,t.createElement)("svg",{ref:f,...o,width:r,height:r,stroke:e,strokeWidth:a?24*Number(i)/Number(r):i,className:n("lucide",l),...!c&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(s)&&{"aria-hidden":"true"},...s},[...u.map(([e,n])=>(0,t.createElement)(e,n)),...Array.isArray(c)?c:[c]])),a=(e,o)=>{let a=(0,t.forwardRef)(({className:a,...l},c)=>(0,t.createElement)(i,{ref:c,iconNode:o,className:n(`lucide-${r(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,a),...l}));return a.displayName=r(e),a};e.s(["default",()=>a],903645)},253532,67384,e=>{"use strict";var t,n=e.i(152155),r=e.i(291967),o=e.i(287620),i=e.i(205978),a=e.i(929297);function l(e,t=globalThis?.document){let r=(0,a.useCallbackRef)(e);n.useEffect(()=>{let e=e=>{"Escape"===e.key&&r(e)};return t.addEventListener("keydown",e,{capture:!0}),()=>t.removeEventListener("keydown",e,{capture:!0})},[r,t])}e.s(["useEscapeKeydown",()=>l],67384);var c=e.i(679606),u="dismissableLayer.update",s=n.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),f=n.forwardRef((e,f)=>{let{disableOutsidePointerEvents:h=!1,onEscapeKeyDown:m,onPointerDownOutside:v,onFocusOutside:g,onInteractOutside:y,onDismiss:w,...b}=e,x=n.useContext(s),[E,R]=n.useState(null),C=E?.ownerDocument??globalThis?.document,[,S]=n.useState({}),A=(0,i.useComposedRefs)(f,e=>R(e)),L=Array.from(x.layers),[P]=[...x.layersWithOutsidePointerEventsDisabled].slice(-1),T=L.indexOf(P),O=E?L.indexOf(E):-1,k=x.layersWithOutsidePointerEventsDisabled.size>0,N=O>=T,D=function(e,t=globalThis?.document){let r=(0,a.useCallbackRef)(e),o=n.useRef(!1),i=n.useRef(()=>{});return n.useEffect(()=>{let e=e=>{if(e.target&&!o.current){let n=function(){p("dismissableLayer.pointerDownOutside",r,o,{discrete:!0})},o={originalEvent:e};"touch"===e.pointerType?(t.removeEventListener("click",i.current),i.current=n,t.addEventListener("click",i.current,{once:!0})):n()}else t.removeEventListener("click",i.current);o.current=!1},n=window.setTimeout(()=>{t.addEventListener("pointerdown",e)},0);return()=>{window.clearTimeout(n),t.removeEventListener("pointerdown",e),t.removeEventListener("click",i.current)}},[t,r]),{onPointerDownCapture:()=>o.current=!0}}(e=>{let t=e.target,n=[...x.branches].some(e=>e.contains(t));N&&!n&&(v?.(e),y?.(e),e.defaultPrevented||w?.())},C),M=function(e,t=globalThis?.document){let r=(0,a.useCallbackRef)(e),o=n.useRef(!1);return n.useEffect(()=>{let e=e=>{e.target&&!o.current&&p("dismissableLayer.focusOutside",r,{originalEvent:e},{discrete:!1})};return t.addEventListener("focusin",e),()=>t.removeEventListener("focusin",e)},[t,r]),{onFocusCapture:()=>o.current=!0,onBlurCapture:()=>o.current=!1}}(e=>{let t=e.target;![...x.branches].some(e=>e.contains(t))&&(g?.(e),y?.(e),e.defaultPrevented||w?.())},C);return l(e=>{O===x.layers.size-1&&(m?.(e),!e.defaultPrevented&&w&&(e.preventDefault(),w()))},C),n.useEffect(()=>{if(E)return h&&(0===x.layersWithOutsidePointerEventsDisabled.size&&(t=C.body.style.pointerEvents,C.body.style.pointerEvents="none"),x.layersWithOutsidePointerEventsDisabled.add(E)),x.layers.add(E),d(),()=>{h&&1===x.layersWithOutsidePointerEventsDisabled.size&&(C.body.style.pointerEvents=t)}},[E,C,h,x]),n.useEffect(()=>()=>{E&&(x.layers.delete(E),x.layersWithOutsidePointerEventsDisabled.delete(E),d())},[E,x]),n.useEffect(()=>{let e=()=>S({});return document.addEventListener(u,e),()=>document.removeEventListener(u,e)},[]),(0,c.jsx)(o.Primitive.div,{...b,ref:A,style:{pointerEvents:k?N?"auto":"none":void 0,...e.style},onFocusCapture:(0,r.composeEventHandlers)(e.onFocusCapture,M.onFocusCapture),onBlurCapture:(0,r.composeEventHandlers)(e.onBlurCapture,M.onBlurCapture),onPointerDownCapture:(0,r.composeEventHandlers)(e.onPointerDownCapture,D.onPointerDownCapture)})});function d(){let e=new CustomEvent(u);document.dispatchEvent(e)}function p(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?(0,o.dispatchDiscreteCustomEvent)(i,a):i.dispatchEvent(a)}f.displayName="DismissableLayer",n.forwardRef((e,t)=>{let r=n.useContext(s),a=n.useRef(null),l=(0,i.useComposedRefs)(t,a);return n.useEffect(()=>{let e=a.current;if(e)return r.branches.add(e),()=>{r.branches.delete(e)}},[r.branches]),(0,c.jsx)(o.Primitive.div,{...e,ref:l})}).displayName="DismissableLayerBranch",e.s(["DismissableLayer",()=>f],253532)},556720,e=>{"use strict";let t;var n=e.i(152155),r=e.i(205978),o=e.i(287620),i=e.i(929297),a=e.i(679606),l="focusScope.autoFocusOnMount",c="focusScope.autoFocusOnUnmount",u={bubbles:!1,cancelable:!0},s=n.forwardRef((e,t)=>{let{loop:s=!1,trapped:m=!1,onMountAutoFocus:v,onUnmountAutoFocus:g,...y}=e,[w,b]=n.useState(null),x=(0,i.useCallbackRef)(v),E=(0,i.useCallbackRef)(g),R=n.useRef(null),C=(0,r.useComposedRefs)(t,e=>b(e)),S=n.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;n.useEffect(()=>{if(m){let e=function(e){if(S.paused||!w)return;let t=e.target;w.contains(t)?R.current=t:p(R.current,{select:!0})},t=function(e){if(S.paused||!w)return;let t=e.relatedTarget;null!==t&&(w.contains(t)||p(R.current,{select:!0}))};document.addEventListener("focusin",e),document.addEventListener("focusout",t);let n=new MutationObserver(function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&p(w)});return w&&n.observe(w,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",e),document.removeEventListener("focusout",t),n.disconnect()}}},[m,w,S.paused]),n.useEffect(()=>{if(w){h.add(S);let e=document.activeElement;if(!w.contains(e)){let t=new CustomEvent(l,u);w.addEventListener(l,x),w.dispatchEvent(t),t.defaultPrevented||(function(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(p(r,{select:t}),document.activeElement!==n)return}(f(w).filter(e=>"A"!==e.tagName),{select:!0}),document.activeElement===e&&p(w))}return()=>{w.removeEventListener(l,x),setTimeout(()=>{let t=new CustomEvent(c,u);w.addEventListener(c,E),w.dispatchEvent(t),t.defaultPrevented||p(e??document.body,{select:!0}),w.removeEventListener(c,E),h.remove(S)},0)}}},[w,x,E,S]);let A=n.useCallback(e=>{if(!s&&!m||S.paused)return;let t="Tab"===e.key&&!e.altKey&&!e.ctrlKey&&!e.metaKey,n=document.activeElement;if(t&&n){var r;let t,o=e.currentTarget,[i,a]=[d(t=f(r=o),r),d(t.reverse(),r)];i&&a?e.shiftKey||n!==a?e.shiftKey&&n===i&&(e.preventDefault(),s&&p(a,{select:!0})):(e.preventDefault(),s&&p(i,{select:!0})):n===o&&e.preventDefault()}},[s,m,S.paused]);return(0,a.jsx)(o.Primitive.div,{tabIndex:-1,...y,ref:C,onKeyDown:A})});function f(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t="INPUT"===e.tagName&&"hidden"===e.type;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function d(e,t){for(let n of e)if(!function(e,{upTo:t}){if("hidden"===getComputedStyle(e).visibility)return!0;for(;e&&(void 0===t||e!==t);){if("none"===getComputedStyle(e).display)return!0;e=e.parentElement}return!1}(n,{upTo:t}))return n}function p(e,{select:t=!1}={}){if(e&&e.focus){var n;let r=document.activeElement;e.focus({preventScroll:!0}),e!==r&&(n=e)instanceof HTMLInputElement&&"select"in n&&t&&e.select()}}s.displayName="FocusScope";var h=(t=[],{add(e){let n=t[0];e!==n&&n?.pause(),(t=m(t,e)).unshift(e)},remove(e){t=m(t,e),t[0]?.resume()}});function m(e,t){let n=[...e],r=n.indexOf(t);return -1!==r&&n.splice(r,1),n}e.s(["FocusScope",()=>s])},339979,e=>{"use strict";var t=e.i(152155),n=e.i(685446),r=e.i(287620),o=e.i(305192),i=e.i(679606),a=t.forwardRef((e,a)=>{let{container:l,...c}=e,[u,s]=t.useState(!1);(0,o.useLayoutEffect)(()=>s(!0),[]);let f=l||u&&globalThis?.document?.body;return f?n.default.createPortal((0,i.jsx)(r.Primitive.div,{...c,ref:a}),f):null});a.displayName="Portal",e.s(["Portal",()=>a])},341687,e=>{"use strict";var t=e.i(152155),n=0;function r(){t.useEffect(()=>{let e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??o()),document.body.insertAdjacentElement("beforeend",e[1]??o()),n++,()=>{1===n&&document.querySelectorAll("[data-radix-focus-guard]").forEach(e=>e.remove()),n--}},[])}function o(){let e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}e.s(["useFocusGuards",()=>r])},813044,e=>{"use strict";var t,n,r,o,i,a,l,c=function(){return(c=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function u(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&0>t.indexOf(r)&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)0>t.indexOf(r[o])&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]]);return n}var s=("function"==typeof SuppressedError&&SuppressedError,e.i(152155)),f="right-scroll-bar-position",d="width-before-scroll-bar";function p(e,t){return"function"==typeof e?e(t):e&&(e.current=t),e}var h="u">typeof window?s.useLayoutEffect:s.useEffect,m=new WeakMap,v=(void 0===t&&(t={}),(void 0===n&&(n=function(e){return e}),r=[],o=!1,i={read:function(){if(o)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:null},useMedium:function(e){var t=n(e,o);return r.push(t),function(){r=r.filter(function(e){return e!==t})}},assignSyncMedium:function(e){for(o=!0;r.length;){var t=r;r=[],t.forEach(e)}r={push:function(t){return e(t)},filter:function(){return r}}},assignMedium:function(e){o=!0;var t=[];if(r.length){var n=r;r=[],n.forEach(e),t=r}var i=function(){var n=t;t=[],n.forEach(e)},a=function(){return Promise.resolve().then(i)};a(),r={push:function(e){t.push(e),a()},filter:function(e){return t=t.filter(e),r}}}}).options=c({async:!0,ssr:!1},t),i),g=function(){},y=s.forwardRef(function(e,t){var n,r,o,i,a=s.useRef(null),l=s.useState({onScrollCapture:g,onWheelCapture:g,onTouchMoveCapture:g}),f=l[0],d=l[1],y=e.forwardProps,w=e.children,b=e.className,x=e.removeScrollBar,E=e.enabled,R=e.shards,C=e.sideCar,S=e.noRelative,A=e.noIsolation,L=e.inert,P=e.allowPinchZoom,T=e.as,O=e.gapMode,k=u(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),N=(n=[a,t],r=function(e){return n.forEach(function(t){return p(t,e)})},(o=(0,s.useState)(function(){return{value:null,callback:r,facade:{get current(){return o.value},set current(value){var e=o.value;e!==value&&(o.value=value,o.callback(value,e))}}}})[0]).callback=r,i=o.facade,h(function(){var e=m.get(i);if(e){var t=new Set(e),r=new Set(n),o=i.current;t.forEach(function(e){r.has(e)||p(e,null)}),r.forEach(function(e){t.has(e)||p(e,o)})}m.set(i,n)},[n]),i),D=c(c({},k),f);return s.createElement(s.Fragment,null,E&&s.createElement(C,{sideCar:v,removeScrollBar:x,shards:R,noRelative:S,noIsolation:A,inert:L,setCallbacks:d,allowPinchZoom:!!P,lockRef:a,gapMode:O}),y?s.cloneElement(s.Children.only(w),c(c({},D),{ref:N})):s.createElement(void 0===T?"div":T,c({},D,{className:b,ref:N}),w))});y.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},y.classNames={fullWidth:d,zeroRight:f};var w=function(e){var t=e.sideCar,n=u(e,["sideCar"]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error("Sidecar medium not found");return s.createElement(r,c({},n))};w.isSideCarExport=!0;var b=function(){var e=0,t=null;return{add:function(n){if(0==e&&(t=function(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=l||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return t&&e.setAttribute("nonce",t),e}())){var r,o;(r=t).styleSheet?r.styleSheet.cssText=n:r.appendChild(document.createTextNode(n)),o=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(o)}e++},remove:function(){--e||!t||(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},x=function(){var e=b();return function(t,n){s.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},E=function(){var e=x();return function(t){return e(t.styles,t.dynamic),null}},R={left:0,top:0,right:0,gap:0},C=function(e){return parseInt(e||"",10)||0},S=function(e){var t=window.getComputedStyle(document.body),n=t["padding"===e?"paddingLeft":"marginLeft"],r=t["padding"===e?"paddingTop":"marginTop"],o=t["padding"===e?"paddingRight":"marginRight"];return[C(n),C(r),C(o)]},A=function(e){if(void 0===e&&(e="margin"),"u"<typeof window)return R;var t=S(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},L=E(),P="data-scroll-locked",T=function(e,t,n,r){var o=e.left,i=e.top,a=e.right,l=e.gap;return void 0===n&&(n="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(r,";\n padding-right: ").concat(l,"px ").concat(r,";\n }\n body[").concat(P,"] {\n overflow: hidden ").concat(r,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(r,";"),"margin"===n&&"\n padding-left: ".concat(o,"px;\n padding-top: ").concat(i,"px;\n padding-right: ").concat(a,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(l,"px ").concat(r,";\n "),"padding"===n&&"padding-right: ".concat(l,"px ").concat(r,";")].filter(Boolean).join(""),"\n }\n \n .").concat(f," {\n right: ").concat(l,"px ").concat(r,";\n }\n \n .").concat(d," {\n margin-right: ").concat(l,"px ").concat(r,";\n }\n \n .").concat(f," .").concat(f," {\n right: 0 ").concat(r,";\n }\n \n .").concat(d," .").concat(d," {\n margin-right: 0 ").concat(r,";\n }\n \n body[").concat(P,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(l,"px;\n }\n")},O=function(){var e=parseInt(document.body.getAttribute(P)||"0",10);return isFinite(e)?e:0},k=function(){s.useEffect(function(){return document.body.setAttribute(P,(O()+1).toString()),function(){var e=O()-1;e<=0?document.body.removeAttribute(P):document.body.setAttribute(P,e.toString())}},[])},N=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,o=void 0===r?"margin":r;k();var i=s.useMemo(function(){return A(o)},[o]);return s.createElement(L,{styles:T(i,!t,o,n?"":"!important")})},D=!1;if("u">typeof window)try{var M=Object.defineProperty({},"passive",{get:function(){return D=!0,!0}});window.addEventListener("test",M,M),window.removeEventListener("test",M,M)}catch(e){D=!1}var W=!!D&&{passive:!1},F=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return"hidden"!==n[t]&&(n.overflowY!==n.overflowX||"TEXTAREA"===e.tagName||"visible"!==n[t])},j=function(e,t){var n=t.ownerDocument,r=t;do{if("u">typeof ShadowRoot&&r instanceof ShadowRoot&&(r=r.host),H(e,r)){var o=B(e,r);if(o[1]>o[2])return!0}r=r.parentNode}while(r&&r!==n.body)return!1},H=function(e,t){return"v"===e?F(t,"overflowY"):F(t,"overflowX")},B=function(e,t){return"v"===e?[t.scrollTop,t.scrollHeight,t.clientHeight]:[t.scrollLeft,t.scrollWidth,t.clientWidth]},z=function(e,t,n,r,o){var i,a=(i=window.getComputedStyle(t).direction,"h"===e&&"rtl"===i?-1:1),l=a*r,c=n.target,u=t.contains(c),s=!1,f=l>0,d=0,p=0;do{if(!c)break;var h=B(e,c),m=h[0],v=h[1]-h[2]-a*m;(m||v)&&H(e,c)&&(d+=v,p+=m);var g=c.parentNode;c=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!u&&c!==document.body||u&&(t.contains(c)||t===c))return f&&(o&&1>Math.abs(d)||!o&&l>d)?s=!0:!f&&(o&&1>Math.abs(p)||!o&&-l>p)&&(s=!0),s},I=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},_=function(e){return[e.deltaX,e.deltaY]},$=function(e){return e&&"current"in e?e.current:e},Y=0,V=[];let K=(a=function(e){var t=s.useRef([]),n=s.useRef([0,0]),r=s.useRef(),o=s.useState(Y++)[0],i=s.useState(E)[0],a=s.useRef(e);s.useEffect(function(){a.current=e},[e]),s.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var t=(function(e,t,n){if(n||2==arguments.length)for(var r,o=0,i=t.length;o<i;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))})([e.lockRef.current],(e.shards||[]).map($),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),t.forEach(function(e){return e.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var l=s.useCallback(function(e,t){if("touches"in e&&2===e.touches.length||"wheel"===e.type&&e.ctrlKey)return!a.current.allowPinchZoom;var o,i=I(e),l=n.current,c="deltaX"in e?e.deltaX:l[0]-i[0],u="deltaY"in e?e.deltaY:l[1]-i[1],s=e.target,f=Math.abs(c)>Math.abs(u)?"h":"v";if("touches"in e&&"h"===f&&"range"===s.type)return!1;var d=window.getSelection(),p=d&&d.anchorNode;if(p&&(p===s||p.contains(s)))return!1;var h=j(f,s);if(!h)return!0;if(h?o=f:(o="v"===f?"h":"v",h=j(f,s)),!h)return!1;if(!r.current&&"changedTouches"in e&&(c||u)&&(r.current=o),!o)return!0;var m=r.current||o;return z(m,t,e,"h"===m?c:u,!0)},[]),c=s.useCallback(function(e){if(V.length&&V[V.length-1]===i){var n="deltaY"in e?_(e):I(e),r=t.current.filter(function(t){var r;return t.name===e.type&&(t.target===e.target||e.target===t.shadowParent)&&(r=t.delta,r[0]===n[0]&&r[1]===n[1])})[0];if(r&&r.should){e.cancelable&&e.preventDefault();return}if(!r){var o=(a.current.shards||[]).map($).filter(Boolean).filter(function(t){return t.contains(e.target)});(o.length>0?l(e,o[0]):!a.current.noIsolation)&&e.cancelable&&e.preventDefault()}}},[]),u=s.useCallback(function(e,n,r,o){var i={name:e,delta:n,target:r,should:o,shadowParent:function(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}(r)};t.current.push(i),setTimeout(function(){t.current=t.current.filter(function(e){return e!==i})},1)},[]),f=s.useCallback(function(e){n.current=I(e),r.current=void 0},[]),d=s.useCallback(function(t){u(t.type,_(t),t.target,l(t,e.lockRef.current))},[]),p=s.useCallback(function(t){u(t.type,I(t),t.target,l(t,e.lockRef.current))},[]);s.useEffect(function(){return V.push(i),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:p}),document.addEventListener("wheel",c,W),document.addEventListener("touchmove",c,W),document.addEventListener("touchstart",f,W),function(){V=V.filter(function(e){return e!==i}),document.removeEventListener("wheel",c,W),document.removeEventListener("touchmove",c,W),document.removeEventListener("touchstart",f,W)}},[]);var h=e.removeScrollBar,m=e.inert;return s.createElement(s.Fragment,null,m?s.createElement(i,{styles:"\n .block-interactivity-".concat(o," {pointer-events: none;}\n .allow-interactivity-").concat(o," {pointer-events: all;}\n")}):null,h?s.createElement(N,{noRelative:e.noRelative,gapMode:e.gapMode}):null)},v.useMedium(a),w);var U=s.forwardRef(function(e,t){return s.createElement(y,c({},e,{ref:t,sideCar:K}))});U.classNames=y.classNames,e.s(["RemoveScroll",0,U],813044)},73772,e=>{"use strict";var t=new WeakMap,n=new WeakMap,r={},o=0,i=function(e){return e&&(e.host||i(e.parentNode))},a=function(e,a,l,c){var u=(Array.isArray(e)?e:[e]).map(function(e){if(a.contains(e))return e;var t=i(e);return t&&a.contains(t)?t:(console.error("aria-hidden",e,"in not contained inside",a,". Doing nothing"),null)}).filter(function(e){return!!e});r[l]||(r[l]=new WeakMap);var s=r[l],f=[],d=new Set,p=new Set(u),h=function(e){!e||d.has(e)||(d.add(e),h(e.parentNode))};u.forEach(h);var m=function(e){!e||p.has(e)||Array.prototype.forEach.call(e.children,function(e){if(d.has(e))m(e);else try{var r=e.getAttribute(c),o=null!==r&&"false"!==r,i=(t.get(e)||0)+1,a=(s.get(e)||0)+1;t.set(e,i),s.set(e,a),f.push(e),1===i&&o&&n.set(e,!0),1===a&&e.setAttribute(l,"true"),o||e.setAttribute(c,"true")}catch(t){console.error("aria-hidden: cannot operate on ",e,t)}})};return m(a),d.clear(),o++,function(){f.forEach(function(e){var r=t.get(e)-1,o=s.get(e)-1;t.set(e,r),s.set(e,o),r||(n.has(e)||e.removeAttribute(c),n.delete(e)),o||e.removeAttribute(l)}),--o||(t=new WeakMap,t=new WeakMap,n=new WeakMap,r={})}},l=function(e,t,n){void 0===n&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=t||("u"<typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live], script"))),a(r,o,n,"aria-hidden")):function(){return null}};e.s(["hideOthers",()=>l])},431227,641712,596142,e=>{"use strict";let t=["top","right","bottom","left"],n=t.reduce((e,t)=>e.concat(t,t+"-start",t+"-end"),[]),r=Math.min,o=Math.max,i=Math.round,a=Math.floor,l=e=>({x:e,y:e}),c={left:"right",right:"left",bottom:"top",top:"bottom"},u={start:"end",end:"start"};function s(e,t){return"function"==typeof e?e(t):e}function f(e){return e.split("-")[0]}function d(e){return e.split("-")[1]}function p(e){return"x"===e?"y":"x"}function h(e){return"y"===e?"height":"width"}let m=new Set(["top","bottom"]);function v(e){return m.has(f(e))?"y":"x"}function g(e,t,n){void 0===n&&(n=!1);let r=d(e),o=p(v(e)),i=h(o),a="x"===o?r===(n?"end":"start")?"right":"left":"start"===r?"bottom":"top";return t.reference[i]>t.floating[i]&&(a=R(a)),[a,R(a)]}function y(e){return e.replace(/start|end/g,e=>u[e])}let w=["left","right"],b=["right","left"],x=["top","bottom"],E=["bottom","top"];function R(e){return e.replace(/left|right|bottom|top/g,e=>c[e])}function C(e){return"number"!=typeof e?{top:0,right:0,bottom:0,left:0,...e}:{top:e,right:e,bottom:e,left:e}}function S(e){let{x:t,y:n,width:r,height:o}=e;return{width:r,height:o,top:n,left:t,right:t+r,bottom:n+o,x:t,y:n}}function A(e,t,n){let r,{reference:o,floating:i}=e,a=v(t),l=p(v(t)),c=h(l),u=f(t),s="y"===a,m=o.x+o.width/2-i.width/2,g=o.y+o.height/2-i.height/2,y=o[c]/2-i[c]/2;switch(u){case"top":r={x:m,y:o.y-i.height};break;case"bottom":r={x:m,y:o.y+o.height};break;case"right":r={x:o.x+o.width,y:g};break;case"left":r={x:o.x-i.width,y:g};break;default:r={x:o.x,y:o.y}}switch(d(t)){case"start":r[l]-=y*(n&&s?-1:1);break;case"end":r[l]+=y*(n&&s?-1:1)}return r}async function L(e,t){var n;void 0===t&&(t={});let{x:r,y:o,platform:i,rects:a,elements:l,strategy:c}=e,{boundary:u="clippingAncestors",rootBoundary:f="viewport",elementContext:d="floating",altBoundary:p=!1,padding:h=0}=s(t,e),m=C(h),v=l[p?"floating"===d?"reference":"floating":d],g=S(await i.getClippingRect({element:null==(n=await (null==i.isElement?void 0:i.isElement(v)))||n?v:v.contextElement||await (null==i.getDocumentElement?void 0:i.getDocumentElement(l.floating)),boundary:u,rootBoundary:f,strategy:c})),y="floating"===d?{x:r,y:o,width:a.floating.width,height:a.floating.height}:a.reference,w=await (null==i.getOffsetParent?void 0:i.getOffsetParent(l.floating)),b=await (null==i.isElement?void 0:i.isElement(w))&&await (null==i.getScale?void 0:i.getScale(w))||{x:1,y:1},x=S(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:y,offsetParent:w,strategy:c}):y);return{top:(g.top-x.top+m.top)/b.y,bottom:(x.bottom-g.bottom+m.bottom)/b.y,left:(g.left-x.left+m.left)/b.x,right:(x.right-g.right+m.right)/b.x}}let P=async(e,t,n)=>{let{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:a}=n,l=i.filter(Boolean),c=await (null==a.isRTL?void 0:a.isRTL(t)),u=await a.getElementRects({reference:e,floating:t,strategy:o}),{x:s,y:f}=A(u,r,c),d=r,p={},h=0;for(let n=0;n<l.length;n++){var m;let{name:i,fn:v}=l[n],{x:g,y:y,data:w,reset:b}=await v({x:s,y:f,initialPlacement:r,placement:d,strategy:o,middlewareData:p,rects:u,platform:{...a,detectOverflow:null!=(m=a.detectOverflow)?m:L},elements:{reference:e,floating:t}});s=null!=g?g:s,f=null!=y?y:f,p={...p,[i]:{...p[i],...w}},b&&h<=50&&(h++,"object"==typeof b&&(b.placement&&(d=b.placement),b.rects&&(u=!0===b.rects?await a.getElementRects({reference:e,floating:t,strategy:o}):b.rects),{x:s,y:f}=A(u,d,c)),n=-1)}return{x:s,y:f,placement:d,strategy:o,middlewareData:p}};function T(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function O(e){return t.some(t=>e[t]>=0)}function k(e){let t=r(...e.map(e=>e.left)),n=r(...e.map(e=>e.top));return{x:t,y:n,width:o(...e.map(e=>e.right))-t,height:o(...e.map(e=>e.bottom))-n}}let N=new Set(["left","top"]);async function D(e,t){let{placement:n,platform:r,elements:o}=e,i=await (null==r.isRTL?void 0:r.isRTL(o.floating)),a=f(n),l=d(n),c="y"===v(n),u=N.has(a)?-1:1,p=i&&c?-1:1,h=s(t,e),{mainAxis:m,crossAxis:g,alignmentAxis:y}="number"==typeof h?{mainAxis:h,crossAxis:0,alignmentAxis:null}:{mainAxis:h.mainAxis||0,crossAxis:h.crossAxis||0,alignmentAxis:h.alignmentAxis};return l&&"number"==typeof y&&(g="end"===l?-1*y:y),c?{x:g*p,y:m*u}:{x:m*u,y:g*p}}function M(){return"u">typeof window}function W(e){return H(e)?(e.nodeName||"").toLowerCase():"#document"}function F(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function j(e){var t;return null==(t=(H(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function H(e){return!!M()&&(e instanceof Node||e instanceof F(e).Node)}function B(e){return!!M()&&(e instanceof Element||e instanceof F(e).Element)}function z(e){return!!M()&&(e instanceof HTMLElement||e instanceof F(e).HTMLElement)}function I(e){return!(!M()||"u"<typeof ShadowRoot)&&(e instanceof ShadowRoot||e instanceof F(e).ShadowRoot)}let _=new Set(["inline","contents"]);function $(e){let{overflow:t,overflowX:n,overflowY:r,display:o}=ee(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!_.has(o)}let Y=new Set(["table","td","th"]),V=[":popover-open",":modal"];function K(e){return V.some(t=>{try{return e.matches(t)}catch(e){return!1}})}let U=["transform","translate","scale","rotate","perspective"],X=["transform","translate","scale","rotate","perspective","filter"],Z=["paint","layout","strict","content"];function q(e){let t=G(),n=B(e)?ee(e):e;return U.some(e=>!!n[e]&&"none"!==n[e])||!!n.containerType&&"normal"!==n.containerType||!t&&!!n.backdropFilter&&"none"!==n.backdropFilter||!t&&!!n.filter&&"none"!==n.filter||X.some(e=>(n.willChange||"").includes(e))||Z.some(e=>(n.contain||"").includes(e))}function G(){return!("u"<typeof CSS)&&!!CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")}let J=new Set(["html","body","#document"]);function Q(e){return J.has(W(e))}function ee(e){return F(e).getComputedStyle(e)}function et(e){return B(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function en(e){if("html"===W(e))return e;let t=e.assignedSlot||e.parentNode||I(e)&&e.host||j(e);return I(t)?t.host:t}function er(e,t,n){var r;void 0===t&&(t=[]),void 0===n&&(n=!0);let o=function e(t){let n=en(t);return Q(n)?t.ownerDocument?t.ownerDocument.body:t.body:z(n)&&$(n)?n:e(n)}(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),a=F(o);if(i){let e=eo(a);return t.concat(a,a.visualViewport||[],$(o)?o:[],e&&n?er(e):[])}return t.concat(o,er(o,[],n))}function eo(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function ei(e){let t=ee(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,o=z(e),a=o?e.offsetWidth:n,l=o?e.offsetHeight:r,c=i(n)!==a||i(r)!==l;return c&&(n=a,r=l),{width:n,height:r,$:c}}function ea(e){return B(e)?e:e.contextElement}function el(e){let t=ea(e);if(!z(t))return l(1);let n=t.getBoundingClientRect(),{width:r,height:o,$:a}=ei(t),c=(a?i(n.width):n.width)/r,u=(a?i(n.height):n.height)/o;return c&&Number.isFinite(c)||(c=1),u&&Number.isFinite(u)||(u=1),{x:c,y:u}}let ec=l(0);function eu(e){let t=F(e);return G()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:ec}function es(e,t,n,r){var o;void 0===t&&(t=!1),void 0===n&&(n=!1);let i=e.getBoundingClientRect(),a=ea(e),c=l(1);t&&(r?B(r)&&(c=el(r)):c=el(e));let u=(void 0===(o=n)&&(o=!1),r&&(!o||r===F(a))&&o)?eu(a):l(0),s=(i.left+u.x)/c.x,f=(i.top+u.y)/c.y,d=i.width/c.x,p=i.height/c.y;if(a){let e=F(a),t=r&&B(r)?F(r):r,n=e,o=eo(n);for(;o&&r&&t!==n;){let e=el(o),t=o.getBoundingClientRect(),r=ee(o),i=t.left+(o.clientLeft+parseFloat(r.paddingLeft))*e.x,a=t.top+(o.clientTop+parseFloat(r.paddingTop))*e.y;s*=e.x,f*=e.y,d*=e.x,p*=e.y,s+=i,f+=a,o=eo(n=F(o))}}return S({width:d,height:p,x:s,y:f})}function ef(e,t){let n=et(e).scrollLeft;return t?t.left+n:es(j(e)).left+n}function ed(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-ef(e,n),y:n.top+t.scrollTop}}let ep=new Set(["absolute","fixed"]);function eh(e,t,n){var r;let i;if("viewport"===t)i=function(e,t){let n=F(e),r=j(e),o=n.visualViewport,i=r.clientWidth,a=r.clientHeight,l=0,c=0;if(o){i=o.width,a=o.height;let e=G();(!e||e&&"fixed"===t)&&(l=o.offsetLeft,c=o.offsetTop)}let u=ef(r);if(u<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),o="CSS1Compat"===e.compatMode&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,a=Math.abs(r.clientWidth-t.clientWidth-o);a<=25&&(i-=a)}else u<=25&&(i+=u);return{width:i,height:a,x:l,y:c}}(e,n);else if("document"===t){let t,n,a,l,c,u,s;r=j(e),t=j(r),n=et(r),a=r.ownerDocument.body,l=o(t.scrollWidth,t.clientWidth,a.scrollWidth,a.clientWidth),c=o(t.scrollHeight,t.clientHeight,a.scrollHeight,a.clientHeight),u=-n.scrollLeft+ef(r),s=-n.scrollTop,"rtl"===ee(a).direction&&(u+=o(t.clientWidth,a.clientWidth)-l),i={width:l,height:c,x:u,y:s}}else if(B(t)){let e,r,o,a,c,u;r=(e=es(t,!0,"fixed"===n)).top+t.clientTop,o=e.left+t.clientLeft,a=z(t)?el(t):l(1),c=t.clientWidth*a.x,u=t.clientHeight*a.y,i={width:c,height:u,x:o*a.x,y:r*a.y}}else{let n=eu(e);i={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return S(i)}function em(e){return"static"===ee(e).position}function ev(e,t){if(!z(e)||"fixed"===ee(e).position)return null;if(t)return t(e);let n=e.offsetParent;return j(e)===n&&(n=n.ownerDocument.body),n}function eg(e,t){var n;let r=F(e);if(K(e))return r;if(!z(e)){let t=en(e);for(;t&&!Q(t);){if(B(t)&&!em(t))return t;t=en(t)}return r}let o=ev(e,t);for(;o&&(n=o,Y.has(W(n)))&&em(o);)o=ev(o,t);return o&&Q(o)&&em(o)&&!q(o)?r:o||function(e){let t=en(e);for(;z(t)&&!Q(t);){if(q(t))return t;if(K(t))break;t=en(t)}return null}(e)||r}let ey=async function(e){let t=this.getOffsetParent||eg,n=this.getDimensions,r=await n(e.floating);return{reference:function(e,t,n){let r=z(t),o=j(t),i="fixed"===n,a=es(e,!0,i,t),c={scrollLeft:0,scrollTop:0},u=l(0);if(r||!r&&!i)if(("body"!==W(t)||$(o))&&(c=et(t)),r){let e=es(t,!0,i,t);u.x=e.x+t.clientLeft,u.y=e.y+t.clientTop}else o&&(u.x=ef(o));i&&!r&&o&&(u.x=ef(o));let s=!o||r||i?l(0):ed(o,c);return{x:a.left+c.scrollLeft-u.x-s.x,y:a.top+c.scrollTop-u.y-s.y,width:a.width,height:a.height}}(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}},ew={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:n,offsetParent:r,strategy:o}=e,i="fixed"===o,a=j(r),c=!!t&&K(t.floating);if(r===a||c&&i)return n;let u={scrollLeft:0,scrollTop:0},s=l(1),f=l(0),d=z(r);if((d||!d&&!i)&&(("body"!==W(r)||$(a))&&(u=et(r)),z(r))){let e=es(r);s=el(r),f.x=e.x+r.clientLeft,f.y=e.y+r.clientTop}let p=!a||d||i?l(0):ed(a,u);return{width:n.width*s.x,height:n.height*s.y,x:n.x*s.x-u.scrollLeft*s.x+f.x+p.x,y:n.y*s.y-u.scrollTop*s.y+f.y+p.y}},getDocumentElement:j,getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:i,strategy:a}=e,l=[..."clippingAncestors"===n?K(t)?[]:function(e,t){let n=t.get(e);if(n)return n;let r=er(e,[],!1).filter(e=>B(e)&&"body"!==W(e)),o=null,i="fixed"===ee(e).position,a=i?en(e):e;for(;B(a)&&!Q(a);){let t=ee(a),n=q(a);n||"fixed"!==t.position||(o=null),(i?!n&&!o:!n&&"static"===t.position&&!!o&&ep.has(o.position)||$(a)&&!n&&function e(t,n){let r=en(t);return!(r===n||!B(r)||Q(r))&&("fixed"===ee(r).position||e(r,n))}(e,a))?r=r.filter(e=>e!==a):o=t,a=en(a)}return t.set(e,r),r}(t,this._c):[].concat(n),i],c=l[0],u=l.reduce((e,n)=>{let i=eh(t,n,a);return e.top=o(i.top,e.top),e.right=r(i.right,e.right),e.bottom=r(i.bottom,e.bottom),e.left=o(i.left,e.left),e},eh(t,c,a));return{width:u.right-u.left,height:u.bottom-u.top,x:u.left,y:u.top}},getOffsetParent:eg,getElementRects:ey,getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){let{width:t,height:n}=ei(e);return{width:t,height:n}},getScale:el,isElement:B,isRTL:function(e){return"rtl"===ee(e).direction}};function eb(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function ex(e,t,n,i){let l;void 0===i&&(i={});let{ancestorScroll:c=!0,ancestorResize:u=!0,elementResize:s="function"==typeof ResizeObserver,layoutShift:f="function"==typeof IntersectionObserver,animationFrame:d=!1}=i,p=ea(e),h=c||u?[...p?er(p):[],...er(t)]:[];h.forEach(e=>{c&&e.addEventListener("scroll",n,{passive:!0}),u&&e.addEventListener("resize",n)});let m=p&&f?function(e,t){let n,i=null,l=j(e);function c(){var e;clearTimeout(n),null==(e=i)||e.disconnect(),i=null}return!function u(s,f){void 0===s&&(s=!1),void 0===f&&(f=1),c();let d=e.getBoundingClientRect(),{left:p,top:h,width:m,height:v}=d;if(s||t(),!m||!v)return;let g={rootMargin:-a(h)+"px "+-a(l.clientWidth-(p+m))+"px "+-a(l.clientHeight-(h+v))+"px "+-a(p)+"px",threshold:o(0,r(1,f))||1},y=!0;function w(t){let r=t[0].intersectionRatio;if(r!==f){if(!y)return u();r?u(!1,r):n=setTimeout(()=>{u(!1,1e-7)},1e3)}1!==r||eb(d,e.getBoundingClientRect())||u(),y=!1}try{i=new IntersectionObserver(w,{...g,root:l.ownerDocument})}catch(e){i=new IntersectionObserver(w,g)}i.observe(e)}(!0),c}(p,n):null,v=-1,g=null;s&&(g=new ResizeObserver(e=>{let[r]=e;r&&r.target===p&&g&&(g.unobserve(t),cancelAnimationFrame(v),v=requestAnimationFrame(()=>{var e;null==(e=g)||e.observe(t)})),n()}),p&&!d&&g.observe(p),g.observe(t));let y=d?es(e):null;return d&&function t(){let r=es(e);y&&!eb(y,r)&&n(),y=r,l=requestAnimationFrame(t)}(),n(),()=>{var e;h.forEach(e=>{c&&e.removeEventListener("scroll",n),u&&e.removeEventListener("resize",n)}),null==m||m(),null==(e=g)||e.disconnect(),g=null,d&&cancelAnimationFrame(l)}}let eE=function(e){return void 0===e&&(e=0),{name:"offset",options:e,async fn(t){var n,r;let{x:o,y:i,placement:a,middlewareData:l}=t,c=await D(t,e);return a===(null==(n=l.offset)?void 0:n.placement)&&null!=(r=l.arrow)&&r.alignmentOffset?{}:{x:o+c.x,y:i+c.y,data:{...c,placement:a}}}}},eR=function(e){return void 0===e&&(e={}),{name:"autoPlacement",options:e,async fn(t){var r,o,i,a;let{rects:l,middlewareData:c,placement:u,platform:p,elements:h}=t,{crossAxis:m=!1,alignment:v,allowedPlacements:w=n,autoAlignment:b=!0,...x}=s(e,t),E=void 0!==v||w===n?((a=v||null)?[...w.filter(e=>d(e)===a),...w.filter(e=>d(e)!==a)]:w.filter(e=>f(e)===e)).filter(e=>!a||d(e)===a||!!b&&y(e)!==e):w,R=await p.detectOverflow(t,x),C=(null==(r=c.autoPlacement)?void 0:r.index)||0,S=E[C];if(null==S)return{};let A=g(S,l,await (null==p.isRTL?void 0:p.isRTL(h.floating)));if(u!==S)return{reset:{placement:E[0]}};let L=[R[f(S)],R[A[0]],R[A[1]]],P=[...(null==(o=c.autoPlacement)?void 0:o.overflows)||[],{placement:S,overflows:L}],T=E[C+1];if(T)return{data:{index:C+1,overflows:P},reset:{placement:T}};let O=P.map(e=>{let t=d(e.placement);return[e.placement,t&&m?e.overflows.slice(0,2).reduce((e,t)=>e+t,0):e.overflows[0],e.overflows]}).sort((e,t)=>e[1]-t[1]),k=(null==(i=O.filter(e=>e[2].slice(0,d(e[0])?2:3).every(e=>e<=0))[0])?void 0:i[0])||O[0][0];return k!==u?{data:{index:C+1,overflows:P},reset:{placement:k}}:{}}}},eC=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){let{x:n,y:i,placement:a,platform:l}=t,{mainAxis:c=!0,crossAxis:u=!1,limiter:d={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...h}=s(e,t),m={x:n,y:i},g=await l.detectOverflow(t,h),y=v(f(a)),w=p(y),b=m[w],x=m[y];if(c){let e="y"===w?"top":"left",t="y"===w?"bottom":"right",n=b+g[e],i=b-g[t];b=o(n,r(b,i))}if(u){let e="y"===y?"top":"left",t="y"===y?"bottom":"right",n=x+g[e],i=x-g[t];x=o(n,r(x,i))}let E=d.fn({...t,[w]:b,[y]:x});return{...E,data:{x:E.x-n,y:E.y-i,enabled:{[w]:c,[y]:u}}}}}},eS=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var n,r,o,i,a;let l,c,u,{placement:p,middlewareData:h,rects:m,initialPlacement:C,platform:S,elements:A}=t,{mainAxis:L=!0,crossAxis:P=!0,fallbackPlacements:T,fallbackStrategy:O="bestFit",fallbackAxisSideDirection:k="none",flipAlignment:N=!0,...D}=s(e,t);if(null!=(n=h.arrow)&&n.alignmentOffset)return{};let M=f(p),W=v(C),F=f(C)===C,j=await (null==S.isRTL?void 0:S.isRTL(A.floating)),H=T||(F||!N?[R(C)]:(l=R(C),[y(C),l,y(l)])),B="none"!==k;!T&&B&&H.push(...(c=d(C),u=function(e,t,n){switch(e){case"top":case"bottom":if(n)return t?b:w;return t?w:b;case"left":case"right":return t?x:E;default:return[]}}(f(C),"start"===k,j),c&&(u=u.map(e=>e+"-"+c),N&&(u=u.concat(u.map(y)))),u));let z=[C,...H],I=await S.detectOverflow(t,D),_=[],$=(null==(r=h.flip)?void 0:r.overflows)||[];if(L&&_.push(I[M]),P){let e=g(p,m,j);_.push(I[e[0]],I[e[1]])}if($=[...$,{placement:p,overflows:_}],!_.every(e=>e<=0)){let e=((null==(o=h.flip)?void 0:o.index)||0)+1,t=z[e];if(t&&("alignment"!==P||W===v(t)||$.every(e=>v(e.placement)!==W||e.overflows[0]>0)))return{data:{index:e,overflows:$},reset:{placement:t}};let n=null==(i=$.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0])?void 0:i.placement;if(!n)switch(O){case"bestFit":{let e=null==(a=$.filter(e=>{if(B){let t=v(e.placement);return t===W||"y"===t}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0])?void 0:a[0];e&&(n=e);break}case"initialPlacement":n=C}if(p!==n)return{reset:{placement:n}}}return{}}}},eA=function(e){return void 0===e&&(e={}),{name:"size",options:e,async fn(t){var n,i;let a,l,{placement:c,rects:u,platform:p,elements:h}=t,{apply:m=()=>{},...g}=s(e,t),y=await p.detectOverflow(t,g),w=f(c),b=d(c),x="y"===v(c),{width:E,height:R}=u.floating;"top"===w||"bottom"===w?(a=w,l=b===(await (null==p.isRTL?void 0:p.isRTL(h.floating))?"start":"end")?"left":"right"):(l=w,a="end"===b?"top":"bottom");let C=R-y.top-y.bottom,S=E-y.left-y.right,A=r(R-y[a],C),L=r(E-y[l],S),P=!t.middlewareData.shift,T=A,O=L;if(null!=(n=t.middlewareData.shift)&&n.enabled.x&&(O=S),null!=(i=t.middlewareData.shift)&&i.enabled.y&&(T=C),P&&!b){let e=o(y.left,0),t=o(y.right,0),n=o(y.top,0),r=o(y.bottom,0);x?O=E-2*(0!==e||0!==t?e+t:o(y.left,y.right)):T=R-2*(0!==n||0!==r?n+r:o(y.top,y.bottom))}await m({...t,availableWidth:O,availableHeight:T});let k=await p.getDimensions(h.floating);return E!==k.width||R!==k.height?{reset:{rects:!0}}:{}}}},eL=function(e){return void 0===e&&(e={}),{name:"hide",options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:o="referenceHidden",...i}=s(e,t);switch(o){case"referenceHidden":{let e=T(await r.detectOverflow(t,{...i,elementContext:"reference"}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:O(e)}}}case"escaped":{let e=T(await r.detectOverflow(t,{...i,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:O(e)}}}default:return{}}}}},eP=e=>({name:"arrow",options:e,async fn(t){let{x:n,y:i,placement:a,rects:l,platform:c,elements:u,middlewareData:f}=t,{element:m,padding:g=0}=s(e,t)||{};if(null==m)return{};let y=C(g),w={x:n,y:i},b=p(v(a)),x=h(b),E=await c.getDimensions(m),R="y"===b,S=R?"clientHeight":"clientWidth",A=l.reference[x]+l.reference[b]-w[b]-l.floating[x],L=w[b]-l.reference[b],P=await (null==c.getOffsetParent?void 0:c.getOffsetParent(m)),T=P?P[S]:0;T&&await (null==c.isElement?void 0:c.isElement(P))||(T=u.floating[S]||l.floating[x]);let O=T/2-E[x]/2-1,k=r(y[R?"top":"left"],O),N=r(y[R?"bottom":"right"],O),D=T-E[x]-N,M=T/2-E[x]/2+(A/2-L/2),W=o(k,r(M,D)),F=!f.arrow&&null!=d(a)&&M!==W&&l.reference[x]/2-(M<k?k:N)-E[x]/2<0,j=F?M<k?M-k:M-D:0;return{[b]:w[b]+j,data:{[b]:W,centerOffset:M-W-j,...F&&{alignmentOffset:j}},reset:F}}}),eT=function(e){return void 0===e&&(e={}),{name:"inline",options:e,async fn(t){let{placement:n,elements:i,rects:a,platform:l,strategy:c}=t,{padding:u=2,x:d,y:p}=s(e,t),h=Array.from(await (null==l.getClientRects?void 0:l.getClientRects(i.reference))||[]),m=function(e){let t=e.slice().sort((e,t)=>e.y-t.y),n=[],r=null;for(let e=0;e<t.length;e++){let o=t[e];!r||o.y-r.y>r.height/2?n.push([o]):n[n.length-1].push(o),r=o}return n.map(e=>S(k(e)))}(h),g=S(k(h)),y=C(u),w=await l.getElementRects({reference:{getBoundingClientRect:function(){if(2===m.length&&m[0].left>m[1].right&&null!=d&&null!=p)return m.find(e=>d>e.left-y.left&&d<e.right+y.right&&p>e.top-y.top&&p<e.bottom+y.bottom)||g;if(m.length>=2){if("y"===v(n)){let e=m[0],t=m[m.length-1],r="top"===f(n),o=e.top,i=t.bottom,a=r?e.left:t.left,l=r?e.right:t.right;return{top:o,bottom:i,left:a,right:l,width:l-a,height:i-o,x:a,y:o}}let e="left"===f(n),t=o(...m.map(e=>e.right)),i=r(...m.map(e=>e.left)),a=m.filter(n=>e?n.left===i:n.right===t),l=a[0].top,c=a[a.length-1].bottom;return{top:l,bottom:c,left:i,right:t,width:t-i,height:c-l,x:i,y:l}}return g}},floating:i.floating,strategy:c});return a.reference.x!==w.reference.x||a.reference.y!==w.reference.y||a.reference.width!==w.reference.width||a.reference.height!==w.reference.height?{reset:{rects:w}}:{}}}},eO=function(e){return void 0===e&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:o,rects:i,middlewareData:a}=t,{offset:l=0,mainAxis:c=!0,crossAxis:u=!0}=s(e,t),d={x:n,y:r},h=v(o),m=p(h),g=d[m],y=d[h],w=s(l,t),b="number"==typeof w?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(c){let e="y"===m?"height":"width",t=i.reference[m]-i.floating[e]+b.mainAxis,n=i.reference[m]+i.reference[e]-b.mainAxis;g<t?g=t:g>n&&(g=n)}if(u){var x,E;let e="y"===m?"width":"height",t=N.has(f(o)),n=i.reference[h]-i.floating[e]+(t&&(null==(x=a.offset)?void 0:x[h])||0)+(t?0:b.crossAxis),r=i.reference[h]+i.reference[e]+(t?0:(null==(E=a.offset)?void 0:E[h])||0)-(t?b.crossAxis:0);y<n?y=n:y>r&&(y=r)}return{[m]:g,[h]:y}}}},ek=(e,t,n)=>{let r=new Map,o={platform:ew,...n},i={...o.platform,_c:r};return P(e,t,{...o,platform:i})};e.s(["arrow",()=>eP,"autoPlacement",()=>eR,"autoUpdate",()=>ex,"computePosition",()=>ek,"flip",()=>eS,"hide",()=>eL,"inline",()=>eT,"limitShift",()=>eO,"offset",()=>eE,"shift",()=>eC,"size",()=>eA],641712);var eN=e.i(152155),eD=e.i(685446),eM="u">typeof document?eN.useLayoutEffect:function(){};function eW(e,t){let n,r,o;if(e===t)return!0;if(typeof e!=typeof t)return!1;if("function"==typeof e&&e.toString()===t.toString())return!0;if(e&&t&&"object"==typeof e){if(Array.isArray(e)){if((n=e.length)!==t.length)return!1;for(r=n;0!=r--;)if(!eW(e[r],t[r]))return!1;return!0}if((n=(o=Object.keys(e)).length)!==Object.keys(t).length)return!1;for(r=n;0!=r--;)if(!({}).hasOwnProperty.call(t,o[r]))return!1;for(r=n;0!=r--;){let n=o[r];if(("_owner"!==n||!e.$$typeof)&&!eW(e[n],t[n]))return!1}return!0}return e!=e&&t!=t}function eF(e){return"u"<typeof window?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function ej(e,t){let n=eF(e);return Math.round(t*n)/n}function eH(e){let t=eN.useRef(e);return eM(()=>{t.current=e}),t}function eB(e){void 0===e&&(e={});let{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:o,elements:{reference:i,floating:a}={},transform:l=!0,whileElementsMounted:c,open:u}=e,[s,f]=eN.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[d,p]=eN.useState(r);eW(d,r)||p(r);let[h,m]=eN.useState(null),[v,g]=eN.useState(null),y=eN.useCallback(e=>{e!==E.current&&(E.current=e,m(e))},[]),w=eN.useCallback(e=>{e!==R.current&&(R.current=e,g(e))},[]),b=i||h,x=a||v,E=eN.useRef(null),R=eN.useRef(null),C=eN.useRef(s),S=null!=c,A=eH(c),L=eH(o),P=eH(u),T=eN.useCallback(()=>{if(!E.current||!R.current)return;let e={placement:t,strategy:n,middleware:d};L.current&&(e.platform=L.current),ek(E.current,R.current,e).then(e=>{let t={...e,isPositioned:!1!==P.current};O.current&&!eW(C.current,t)&&(C.current=t,eD.flushSync(()=>{f(t)}))})},[d,t,n,L,P]);eM(()=>{!1===u&&C.current.isPositioned&&(C.current.isPositioned=!1,f(e=>({...e,isPositioned:!1})))},[u]);let O=eN.useRef(!1);eM(()=>(O.current=!0,()=>{O.current=!1}),[]),eM(()=>{if(b&&(E.current=b),x&&(R.current=x),b&&x){if(A.current)return A.current(b,x,T);T()}},[b,x,T,A,S]);let k=eN.useMemo(()=>({reference:E,floating:R,setReference:y,setFloating:w}),[y,w]),N=eN.useMemo(()=>({reference:b,floating:x}),[b,x]),D=eN.useMemo(()=>{let e={position:n,left:0,top:0};if(!N.floating)return e;let t=ej(N.floating,s.x),r=ej(N.floating,s.y);return l?{...e,transform:"translate("+t+"px, "+r+"px)",...eF(N.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:t,top:r}},[n,l,N.floating,s.x,s.y]);return eN.useMemo(()=>({...s,update:T,refs:k,elements:N,floatingStyles:D}),[s,T,k,N,D])}let ez=(e,t)=>({...eE(e),options:[e,t]}),eI=(e,t)=>({...eC(e),options:[e,t]}),e_=(e,t)=>({...eO(e),options:[e,t]}),e$=(e,t)=>({...eS(e),options:[e,t]}),eY=(e,t)=>({...eA(e),options:[e,t]}),eV=(e,t)=>({...eL(e),options:[e,t]}),eK=(e,t)=>({name:"arrow",options:e,fn(t){let{element:n,padding:r}="function"==typeof e?e(t):e;return n&&({}).hasOwnProperty.call(n,"current")?null!=n.current?eP({element:n.current,padding:r}).fn(t):{}:n?eP({element:n,padding:r}).fn(t):{}},options:[e,t]});e.s(["arrow",()=>eK,"flip",()=>e$,"hide",()=>eV,"limitShift",()=>e_,"offset",()=>ez,"shift",()=>eI,"size",()=>eY,"useFloating",()=>eB],431227);var eU=e.i(287620),eX=e.i(679606),eZ=eN.forwardRef((e,t)=>{let{children:n,width:r=10,height:o=5,...i}=e;return(0,eX.jsx)(eU.Primitive.svg,{...i,ref:t,width:r,height:o,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?n:(0,eX.jsx)("polygon",{points:"0,0 30,0 15,10"})})});eZ.displayName="Arrow",e.s(["Root",()=>eZ],596142)},277624,e=>{"use strict";var t=e.i(152155),n=e.i(305192);function r(e){let[r,o]=t.useState(void 0);return(0,n.useLayoutEffect)(()=>{if(e){o({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{let n,r;if(!Array.isArray(t)||!t.length)return;let i=t[0];if("borderBoxSize"in i){let e=i.borderBoxSize,t=Array.isArray(e)?e[0]:e;n=t.inlineSize,r=t.blockSize}else n=e.offsetWidth,r=e.offsetHeight;o({width:n,height:r})});return t.observe(e,{box:"border-box"}),()=>t.unobserve(e)}o(void 0)},[e]),r}e.s(["useSize",()=>r])},252740,e=>{"use strict";var t=e.i(152155),n=e.i(431227),r=e.i(641712),o=e.i(596142),i=e.i(205978),a=e.i(922528),l=e.i(287620),c=e.i(929297),u=e.i(305192),s=e.i(277624),f=e.i(679606),d="Popper",[p,h]=(0,a.createContextScope)(d),[m,v]=p(d),g=e=>{let{__scopePopper:n,children:r}=e,[o,i]=t.useState(null);return(0,f.jsx)(m,{scope:n,anchor:o,onAnchorChange:i,children:r})};g.displayName=d;var y="PopperAnchor",w=t.forwardRef((e,n)=>{let{__scopePopper:r,virtualRef:o,...a}=e,c=v(y,r),u=t.useRef(null),s=(0,i.useComposedRefs)(n,u),d=t.useRef(null);return t.useEffect(()=>{let e=d.current;d.current=o?.current||u.current,e!==d.current&&c.onAnchorChange(d.current)}),o?null:(0,f.jsx)(l.Primitive.div,{...a,ref:s})});w.displayName=y;var b="PopperContent",[x,E]=p(b),R=t.forwardRef((e,o)=>{let{__scopePopper:a,side:d="bottom",sideOffset:p=0,align:h="center",alignOffset:m=0,arrowPadding:g=0,avoidCollisions:y=!0,collisionBoundary:w=[],collisionPadding:E=0,sticky:R="partial",hideWhenDetached:C=!1,updatePositionStrategy:S="optimized",onPlaced:A,...O}=e,k=v(b,a),[N,D]=t.useState(null),M=(0,i.useComposedRefs)(o,e=>D(e)),[W,F]=t.useState(null),j=(0,s.useSize)(W),H=j?.width??0,B=j?.height??0,z="number"==typeof E?E:{top:0,right:0,bottom:0,left:0,...E},I=Array.isArray(w)?w:[w],_=I.length>0,$={padding:z,boundary:I.filter(L),altBoundary:_},{refs:Y,floatingStyles:V,placement:K,isPositioned:U,middlewareData:X}=(0,n.useFloating)({strategy:"fixed",placement:d+("center"!==h?"-"+h:""),whileElementsMounted:(...e)=>(0,r.autoUpdate)(...e,{animationFrame:"always"===S}),elements:{reference:k.anchor},middleware:[(0,n.offset)({mainAxis:p+B,alignmentAxis:m}),y&&(0,n.shift)({mainAxis:!0,crossAxis:!1,limiter:"partial"===R?(0,n.limitShift)():void 0,...$}),y&&(0,n.flip)({...$}),(0,n.size)({...$,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:o,height:i}=t.reference,a=e.floating.style;a.setProperty("--radix-popper-available-width",`${n}px`),a.setProperty("--radix-popper-available-height",`${r}px`),a.setProperty("--radix-popper-anchor-width",`${o}px`),a.setProperty("--radix-popper-anchor-height",`${i}px`)}}),W&&(0,n.arrow)({element:W,padding:g}),P({arrowWidth:H,arrowHeight:B}),C&&(0,n.hide)({strategy:"referenceHidden",...$})]}),[Z,q]=T(K),G=(0,c.useCallbackRef)(A);(0,u.useLayoutEffect)(()=>{U&&G?.()},[U,G]);let J=X.arrow?.x,Q=X.arrow?.y,ee=X.arrow?.centerOffset!==0,[et,en]=t.useState();return(0,u.useLayoutEffect)(()=>{N&&en(window.getComputedStyle(N).zIndex)},[N]),(0,f.jsx)("div",{ref:Y.setFloating,"data-radix-popper-content-wrapper":"",style:{...V,transform:U?V.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:et,"--radix-popper-transform-origin":[X.transformOrigin?.x,X.transformOrigin?.y].join(" "),...X.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:(0,f.jsx)(x,{scope:a,placedSide:Z,onArrowChange:F,arrowX:J,arrowY:Q,shouldHideArrow:ee,children:(0,f.jsx)(l.Primitive.div,{"data-side":Z,"data-align":q,...O,ref:M,style:{...O.style,animation:U?void 0:"none"}})})})});R.displayName=b;var C="PopperArrow",S={top:"bottom",right:"left",bottom:"top",left:"right"},A=t.forwardRef(function(e,t){let{__scopePopper:n,...r}=e,i=E(C,n),a=S[i.placedSide];return(0,f.jsx)("span",{ref:i.onArrowChange,style:{position:"absolute",left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[i.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[i.placedSide],visibility:i.shouldHideArrow?"hidden":void 0},children:(0,f.jsx)(o.Root,{...r,ref:t,style:{...r.style,display:"block"}})})});function L(e){return null!==e}A.displayName=C;var P=e=>({name:"transformOrigin",options:e,fn(t){let{placement:n,rects:r,middlewareData:o}=t,i=o.arrow?.centerOffset!==0,a=i?0:e.arrowWidth,l=i?0:e.arrowHeight,[c,u]=T(n),s={start:"0%",center:"50%",end:"100%"}[u],f=(o.arrow?.x??0)+a/2,d=(o.arrow?.y??0)+l/2,p="",h="";return"bottom"===c?(p=i?s:`${f}px`,h=`${-l}px`):"top"===c?(p=i?s:`${f}px`,h=`${r.floating.height+l}px`):"right"===c?(p=`${-l}px`,h=i?s:`${d}px`):"left"===c&&(p=`${r.floating.width+l}px`,h=i?s:`${d}px`),{data:{x:p,y:h}}}});function T(e){let[t,n="center"]=e.split("-");return[t,n]}e.s(["Anchor",()=>w,"Arrow",()=>A,"Content",()=>R,"Root",()=>g,"createPopperScope",()=>h])},201693,e=>{"use strict";var t=e.i(152155),n=e.i(287620),r=e.i(679606),o=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),i=t.forwardRef((e,t)=>(0,r.jsx)(n.Primitive.span,{...e,ref:t,style:{...o,...e.style}}));i.displayName="VisuallyHidden",e.s(["Root",()=>i,"VISUALLY_HIDDEN_STYLES",()=>o,"VisuallyHidden",()=>i])}]);