@shepai/cli 1.182.1 → 1.183.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (519) hide show
  1. package/apis/json-schema/Application.yaml +7 -0
  2. package/dist/packages/core/src/application/ports/output/repositories/application-repository.interface.d.ts +1 -1
  3. package/dist/packages/core/src/application/ports/output/repositories/application-repository.interface.d.ts.map +1 -1
  4. package/dist/packages/core/src/application/use-cases/applications/create-application.use-case.d.ts +3 -3
  5. package/dist/packages/core/src/application/use-cases/applications/create-application.use-case.d.ts.map +1 -1
  6. package/dist/packages/core/src/application/use-cases/applications/create-application.use-case.js +13 -21
  7. package/dist/packages/core/src/application/use-cases/applications/list-applications.use-case.d.ts +19 -3
  8. package/dist/packages/core/src/application/use-cases/applications/list-applications.use-case.d.ts.map +1 -1
  9. package/dist/packages/core/src/application/use-cases/applications/list-applications.use-case.js +37 -4
  10. package/dist/packages/core/src/application/use-cases/applications/resume-application-workflow.use-case.d.ts +30 -0
  11. package/dist/packages/core/src/application/use-cases/applications/resume-application-workflow.use-case.d.ts.map +1 -0
  12. package/dist/packages/core/src/application/use-cases/applications/resume-application-workflow.use-case.js +122 -0
  13. package/dist/packages/core/src/domain/generated/output.d.ts +8 -0
  14. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  15. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  16. package/dist/packages/core/src/infrastructure/di/container.js +5 -0
  17. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/application.mapper.d.ts +2 -0
  18. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/application.mapper.d.ts.map +1 -1
  19. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/application.mapper.js +4 -0
  20. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/058-add-setup-complete-to-applications.d.ts +5 -0
  21. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/058-add-setup-complete-to-applications.d.ts.map +1 -0
  22. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/058-add-setup-complete-to-applications.js +10 -0
  23. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/059-add-agent-session-id-to-applications.d.ts +5 -0
  24. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/059-add-agent-session-id-to-applications.d.ts.map +1 -0
  25. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/059-add-agent-session-id-to-applications.js +10 -0
  26. package/dist/packages/core/src/infrastructure/repositories/sqlite-application.repository.d.ts +1 -1
  27. package/dist/packages/core/src/infrastructure/repositories/sqlite-application.repository.d.ts.map +1 -1
  28. package/dist/packages/core/src/infrastructure/repositories/sqlite-application.repository.js +10 -2
  29. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.d.ts.map +1 -1
  30. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.js +4 -1
  31. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/fast-implement.prompt.d.ts.map +1 -1
  32. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/fast-implement.prompt.js +4 -1
  33. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/implement.prompt.d.ts.map +1 -1
  34. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/implement.prompt.js +4 -1
  35. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/merge-prompts.d.ts.map +1 -1
  36. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/merge-prompts.js +11 -6
  37. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/pr-branding.d.ts +2 -2
  38. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/pr-branding.d.ts.map +1 -1
  39. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/pr-branding.js +2 -2
  40. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts.map +1 -1
  41. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.js +3 -2
  42. package/dist/packages/core/src/infrastructure/services/git/pr-branding.d.ts +16 -5
  43. package/dist/packages/core/src/infrastructure/services/git/pr-branding.d.ts.map +1 -1
  44. package/dist/packages/core/src/infrastructure/services/git/pr-branding.js +38 -7
  45. package/dist/src/presentation/web/app/api/applications/[id]/resume/route.d.ts +20 -0
  46. package/dist/src/presentation/web/app/api/applications/[id]/resume/route.d.ts.map +1 -0
  47. package/dist/src/presentation/web/app/api/applications/[id]/resume/route.js +25 -0
  48. package/dist/src/presentation/web/app/api/applications/[id]/route.d.ts +19 -0
  49. package/dist/src/presentation/web/app/api/applications/[id]/route.d.ts.map +1 -0
  50. package/dist/src/presentation/web/app/api/applications/[id]/route.js +46 -0
  51. package/dist/src/presentation/web/app/api/applications/route.d.ts +9 -0
  52. package/dist/src/presentation/web/app/api/applications/route.d.ts.map +1 -0
  53. package/dist/src/presentation/web/app/api/applications/route.js +20 -0
  54. package/dist/src/presentation/web/app/application/[id]/page.d.ts +4 -4
  55. package/dist/src/presentation/web/app/application/[id]/page.d.ts.map +1 -1
  56. package/dist/src/presentation/web/app/application/[id]/page.js +2 -61
  57. package/dist/src/presentation/web/app/applications/page.d.ts +2 -0
  58. package/dist/src/presentation/web/app/applications/page.d.ts.map +1 -0
  59. package/dist/src/presentation/web/app/applications/page.js +5 -0
  60. package/dist/src/presentation/web/components/assistant-ui/thread.js +2 -2
  61. package/dist/src/presentation/web/components/common/application-node/application-node.d.ts.map +1 -1
  62. package/dist/src/presentation/web/components/common/application-node/application-node.js +3 -37
  63. package/dist/src/presentation/web/components/features/application-page/application-page-loader.d.ts +4 -0
  64. package/dist/src/presentation/web/components/features/application-page/application-page-loader.d.ts.map +1 -0
  65. package/dist/src/presentation/web/components/features/application-page/application-page-loader.js +47 -0
  66. package/dist/src/presentation/web/components/features/application-page/application-page.d.ts.map +1 -1
  67. package/dist/src/presentation/web/components/features/application-page/application-page.js +75 -54
  68. package/dist/src/presentation/web/components/features/application-page/application-page.stories.d.ts.map +1 -1
  69. package/dist/src/presentation/web/components/features/application-page/application-page.stories.js +1 -0
  70. package/dist/src/presentation/web/components/features/application-page/run-dev-button.d.ts +3 -1
  71. package/dist/src/presentation/web/components/features/application-page/run-dev-button.d.ts.map +1 -1
  72. package/dist/src/presentation/web/components/features/application-page/run-dev-button.js +6 -2
  73. package/dist/src/presentation/web/components/features/applications/application-card.d.ts +7 -0
  74. package/dist/src/presentation/web/components/features/applications/application-card.d.ts.map +1 -0
  75. package/dist/src/presentation/web/components/features/applications/application-card.js +82 -0
  76. package/dist/src/presentation/web/components/features/applications/application-card.stories.d.ts +13 -0
  77. package/dist/src/presentation/web/components/features/applications/application-card.stories.d.ts.map +1 -0
  78. package/dist/src/presentation/web/components/features/applications/application-card.stories.js +69 -0
  79. package/dist/src/presentation/web/components/features/applications/applications-page-client.d.ts +5 -0
  80. package/dist/src/presentation/web/components/features/applications/applications-page-client.d.ts.map +1 -0
  81. package/dist/src/presentation/web/components/features/applications/applications-page-client.js +28 -0
  82. package/dist/src/presentation/web/components/features/applications/applications-page-client.stories.d.ts +10 -0
  83. package/dist/src/presentation/web/components/features/applications/applications-page-client.stories.d.ts.map +1 -0
  84. package/dist/src/presentation/web/components/features/applications/applications-page-client.stories.js +93 -0
  85. package/dist/src/presentation/web/components/features/chat/ChatComposer.d.ts +3 -1
  86. package/dist/src/presentation/web/components/features/chat/ChatComposer.d.ts.map +1 -1
  87. package/dist/src/presentation/web/components/features/chat/ChatComposer.js +2 -2
  88. package/dist/src/presentation/web/components/features/chat/ChatTab.d.ts +3 -1
  89. package/dist/src/presentation/web/components/features/chat/ChatTab.d.ts.map +1 -1
  90. package/dist/src/presentation/web/components/features/chat/ChatTab.js +4 -3
  91. package/dist/src/presentation/web/components/features/chat/StepTracker.d.ts +6 -1
  92. package/dist/src/presentation/web/components/features/chat/StepTracker.d.ts.map +1 -1
  93. package/dist/src/presentation/web/components/features/chat/StepTracker.js +23 -20
  94. package/dist/src/presentation/web/components/features/control-center/control-center-inner.d.ts.map +1 -1
  95. package/dist/src/presentation/web/components/features/control-center/control-center-inner.js +3 -2
  96. package/dist/src/presentation/web/components/features/features-canvas/features-canvas.d.ts +3 -1
  97. package/dist/src/presentation/web/components/features/features-canvas/features-canvas.d.ts.map +1 -1
  98. package/dist/src/presentation/web/components/features/features-canvas/features-canvas.js +2 -2
  99. package/dist/src/presentation/web/components/features/settings/language-settings-section.d.ts.map +1 -1
  100. package/dist/src/presentation/web/components/features/settings/language-settings-section.js +1 -0
  101. package/dist/src/presentation/web/components/features/settings/language-settings-section.stories.d.ts +1 -0
  102. package/dist/src/presentation/web/components/features/settings/language-settings-section.stories.d.ts.map +1 -1
  103. package/dist/src/presentation/web/components/features/settings/language-settings-section.stories.js +5 -0
  104. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  105. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +23 -3
  106. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts.map +1 -1
  107. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.js +2 -2
  108. package/dist/src/presentation/web/lib/derive-app-status.d.ts +23 -0
  109. package/dist/src/presentation/web/lib/derive-app-status.d.ts.map +1 -0
  110. package/dist/src/presentation/web/lib/derive-app-status.js +89 -0
  111. package/dist/src/presentation/web/lib/i18n.d.ts.map +1 -1
  112. package/dist/src/presentation/web/lib/i18n.js +3 -0
  113. package/dist/translations/ar/web.json +2 -1
  114. package/dist/translations/de/web.json +2 -1
  115. package/dist/translations/en/web.json +2 -1
  116. package/dist/translations/es/web.json +2 -1
  117. package/dist/translations/fr/web.json +2 -1
  118. package/dist/translations/he/web.json +2 -1
  119. package/dist/translations/pt/web.json +2 -1
  120. package/dist/translations/ru/web.json +2 -1
  121. package/dist/translations/uk/web.json +2 -1
  122. package/dist/tsconfig.build.tsbuildinfo +1 -1
  123. package/package.json +1 -1
  124. package/web/.next/BUILD_ID +1 -1
  125. package/web/.next/app-path-routes-manifest.json +4 -0
  126. package/web/.next/build-manifest.json +2 -2
  127. package/web/.next/fallback-build-manifest.json +2 -2
  128. package/web/.next/prerender-manifest.json +3 -3
  129. package/web/.next/required-server-files.js +2 -2
  130. package/web/.next/required-server-files.json +2 -2
  131. package/web/.next/routes-manifest.json +28 -0
  132. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +32 -32
  133. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +5 -5
  134. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  135. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  136. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +30 -30
  137. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js +5 -5
  138. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  139. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  140. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +33 -33
  141. package/web/.next/server/app/(dashboard)/@drawer/create/page.js +5 -5
  142. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  143. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  144. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +41 -41
  145. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +5 -5
  146. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  147. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  148. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +41 -41
  149. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +5 -5
  150. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  151. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  152. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +31 -31
  153. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js +5 -5
  154. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  155. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  156. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +31 -31
  157. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +5 -5
  158. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  159. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  160. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +30 -30
  161. package/web/.next/server/app/(dashboard)/chat/page.js +5 -5
  162. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  163. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  164. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +33 -33
  165. package/web/.next/server/app/(dashboard)/create/page.js +5 -5
  166. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  167. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  168. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +41 -41
  169. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +5 -5
  170. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  171. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  172. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +41 -41
  173. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +5 -5
  174. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  175. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  176. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +30 -30
  177. package/web/.next/server/app/(dashboard)/page.js +5 -5
  178. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  179. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  180. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +31 -31
  181. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js +5 -5
  182. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  183. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  184. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +31 -31
  185. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +5 -5
  186. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  187. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  188. package/web/.next/server/app/_global-error/page.js +1 -1
  189. package/web/.next/server/app/_global-error/page.js.nft.json +1 -1
  190. package/web/.next/server/app/_global-error.html +2 -2
  191. package/web/.next/server/app/_global-error.rsc +1 -1
  192. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  193. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  194. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  195. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  196. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  197. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +7 -7
  198. package/web/.next/server/app/_not-found/page.js +1 -1
  199. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  200. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  201. package/web/.next/server/app/api/applications/[id]/resume/route/app-paths-manifest.json +3 -0
  202. package/web/.next/server/app/api/applications/[id]/resume/route/build-manifest.json +11 -0
  203. package/web/.next/server/app/api/applications/[id]/resume/route/server-reference-manifest.json +4 -0
  204. package/web/.next/server/app/api/applications/[id]/resume/route.js +7 -0
  205. package/web/.next/server/app/api/applications/[id]/resume/route.js.map +5 -0
  206. package/web/.next/server/app/api/applications/[id]/resume/route.js.nft.json +1 -0
  207. package/web/.next/server/app/api/applications/[id]/resume/route_client-reference-manifest.js +2 -0
  208. package/web/.next/server/app/api/applications/[id]/route/app-paths-manifest.json +3 -0
  209. package/web/.next/server/app/api/applications/[id]/route/build-manifest.json +11 -0
  210. package/web/.next/server/app/api/applications/[id]/route/server-reference-manifest.json +4 -0
  211. package/web/.next/server/app/api/applications/[id]/route.js +7 -0
  212. package/web/.next/server/app/api/applications/[id]/route.js.map +5 -0
  213. package/web/.next/server/app/api/applications/[id]/route.js.nft.json +1 -0
  214. package/web/.next/server/app/api/applications/[id]/route_client-reference-manifest.js +2 -0
  215. package/web/.next/server/app/api/applications/route/app-paths-manifest.json +3 -0
  216. package/web/.next/server/app/api/applications/route/build-manifest.json +11 -0
  217. package/web/.next/server/app/api/applications/route/server-reference-manifest.json +4 -0
  218. package/web/.next/server/app/api/applications/route.js +7 -0
  219. package/web/.next/server/app/api/applications/route.js.map +5 -0
  220. package/web/.next/server/app/api/applications/route.js.nft.json +1 -0
  221. package/web/.next/server/app/api/applications/route_client-reference-manifest.js +2 -0
  222. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  223. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  224. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  225. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
  226. package/web/.next/server/app/application/[id]/page/server-reference-manifest.json +45 -30
  227. package/web/.next/server/app/application/[id]/page.js +3 -3
  228. package/web/.next/server/app/application/[id]/page.js.nft.json +1 -1
  229. package/web/.next/server/app/application/[id]/page_client-reference-manifest.js +1 -1
  230. package/web/.next/server/app/applications/page/app-paths-manifest.json +3 -0
  231. package/web/.next/server/app/applications/page/build-manifest.json +18 -0
  232. package/web/.next/server/app/applications/page/next-font-manifest.json +6 -0
  233. package/web/.next/server/app/applications/page/react-loadable-manifest.json +1 -0
  234. package/web/.next/server/app/applications/page/server-reference-manifest.json +230 -0
  235. package/web/.next/server/app/applications/page.js +19 -0
  236. package/web/.next/server/app/applications/page.js.map +5 -0
  237. package/web/.next/server/app/applications/page.js.nft.json +1 -0
  238. package/web/.next/server/app/applications/page_client-reference-manifest.js +2 -0
  239. package/web/.next/server/app/features/page/server-reference-manifest.json +7 -7
  240. package/web/.next/server/app/features/page.js +1 -1
  241. package/web/.next/server/app/features/page.js.nft.json +1 -1
  242. package/web/.next/server/app/features/page_client-reference-manifest.js +1 -1
  243. package/web/.next/server/app/settings/page/server-reference-manifest.json +10 -10
  244. package/web/.next/server/app/settings/page.js +1 -1
  245. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  246. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  247. package/web/.next/server/app/skills/page/server-reference-manifest.json +15 -15
  248. package/web/.next/server/app/skills/page.js +1 -1
  249. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  250. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  251. package/web/.next/server/app/tools/page/server-reference-manifest.json +13 -13
  252. package/web/.next/server/app/tools/page.js +1 -1
  253. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  254. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  255. package/web/.next/server/app/version/page/server-reference-manifest.json +7 -7
  256. package/web/.next/server/app/version/page.js +1 -1
  257. package/web/.next/server/app/version/page.js.nft.json +1 -1
  258. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  259. package/web/.next/server/app-paths-manifest.json +4 -0
  260. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_applications_[id]_route_actions_e31b426d.js +3 -0
  261. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_applications_[id]_route_actions_e31b426d.js.map +1 -0
  262. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_applications_route_actions_2b7d20d0.js +3 -0
  263. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_applications_route_actions_2b7d20d0.js.map +1 -0
  264. package/web/.next/server/chunks/[root-of-the-server]__3bb635e8._.js +3 -0
  265. package/web/.next/server/chunks/[root-of-the-server]__3bb635e8._.js.map +1 -0
  266. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  267. package/web/.next/server/chunks/[root-of-the-server]__ac0027b4._.js +3 -0
  268. package/web/.next/server/chunks/[root-of-the-server]__ac0027b4._.js.map +1 -0
  269. package/web/.next/server/chunks/[root-of-the-server]__b2a4bfcc._.js.map +1 -1
  270. package/web/.next/server/chunks/[root-of-the-server]__c8f90b29._.js +1 -1
  271. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  272. package/web/.next/server/chunks/[root-of-the-server]__ce82df38._.js +3 -0
  273. package/web/.next/server/chunks/[root-of-the-server]__ce82df38._.js.map +1 -0
  274. package/web/.next/server/chunks/f3a1f__next-internal_server_app_api_applications_[id]_resume_route_actions_3a66d646.js +3 -0
  275. package/web/.next/server/chunks/f3a1f__next-internal_server_app_api_applications_[id]_resume_route_actions_3a66d646.js.map +1 -0
  276. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4f9eef62.js +3 -0
  277. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4f9eef62.js.map +1 -0
  278. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_chat_page_actions_ffa16a22.js +3 -0
  279. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_chat_page_actions_ffa16a22.js.map +1 -0
  280. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_chat_page_actions_a1a998f9.js +3 -0
  281. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_chat_page_actions_a1a998f9.js.map +1 -0
  282. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  283. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  284. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +2 -2
  285. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  286. package/web/.next/server/chunks/ssr/744ca_web_components_features_applications_applications-page-client_tsx_d0db9938._.js +3 -0
  287. package/web/.next/server/chunks/ssr/744ca_web_components_features_applications_applications-page-client_tsx_d0db9938._.js.map +1 -0
  288. package/web/.next/server/chunks/ssr/[root-of-the-server]__04f4895b._.js +3 -0
  289. package/web/.next/server/chunks/ssr/[root-of-the-server]__04f4895b._.js.map +1 -0
  290. package/web/.next/server/chunks/ssr/[root-of-the-server]__17dadd08._.js +1 -1
  291. package/web/.next/server/chunks/ssr/[root-of-the-server]__17dadd08._.js.map +1 -1
  292. package/web/.next/server/chunks/ssr/[root-of-the-server]__1925bef0._.js +1 -1
  293. package/web/.next/server/chunks/ssr/[root-of-the-server]__1a9687c4._.js +1 -1
  294. package/web/.next/server/chunks/ssr/[root-of-the-server]__1a9687c4._.js.map +1 -1
  295. package/web/.next/server/chunks/ssr/[root-of-the-server]__347fd0f6._.js +3 -0
  296. package/web/.next/server/chunks/ssr/[root-of-the-server]__347fd0f6._.js.map +1 -0
  297. package/web/.next/server/chunks/ssr/[root-of-the-server]__46dd2baf._.js +3 -0
  298. package/web/.next/server/chunks/ssr/[root-of-the-server]__46dd2baf._.js.map +1 -0
  299. package/web/.next/server/chunks/ssr/[root-of-the-server]__4ee8be85._.js +1 -1
  300. package/web/.next/server/chunks/ssr/[root-of-the-server]__73cb4ff6._.js +3 -0
  301. package/web/.next/server/chunks/ssr/[root-of-the-server]__73cb4ff6._.js.map +1 -0
  302. package/web/.next/server/chunks/ssr/{[root-of-the-server]__87bc4dac._.js → [root-of-the-server]__86ff0bc5._.js} +3 -3
  303. package/web/.next/server/chunks/ssr/[root-of-the-server]__86ff0bc5._.js.map +1 -0
  304. package/web/.next/server/chunks/ssr/[root-of-the-server]__91c50abe._.js +3 -0
  305. package/web/.next/server/chunks/ssr/[root-of-the-server]__91c50abe._.js.map +1 -0
  306. package/web/.next/server/chunks/ssr/[root-of-the-server]__a48af49f._.js +3 -0
  307. package/web/.next/server/chunks/ssr/[root-of-the-server]__a48af49f._.js.map +1 -0
  308. package/web/.next/server/chunks/ssr/[root-of-the-server]__bb391c45._.js +1 -1
  309. package/web/.next/server/chunks/ssr/[root-of-the-server]__bb391c45._.js.map +1 -1
  310. package/web/.next/server/chunks/ssr/[root-of-the-server]__d5e22d1a._.js +3 -0
  311. package/web/.next/server/chunks/ssr/{[root-of-the-server]__7aa484f5._.js.map → [root-of-the-server]__d5e22d1a._.js.map} +1 -1
  312. package/web/.next/server/chunks/ssr/[root-of-the-server]__dd3e834e._.js +1 -1
  313. package/web/.next/server/chunks/ssr/[root-of-the-server]__dd3e834e._.js.map +1 -1
  314. package/web/.next/server/chunks/ssr/[root-of-the-server]__e0aa2bcb._.js +3 -0
  315. package/web/.next/server/chunks/ssr/[root-of-the-server]__e0aa2bcb._.js.map +1 -0
  316. package/web/.next/server/chunks/ssr/[root-of-the-server]__e265da61._.js +1 -1
  317. package/web/.next/server/chunks/ssr/[root-of-the-server]__ef0b8905._.js +12 -0
  318. package/web/.next/server/chunks/ssr/[root-of-the-server]__ef0b8905._.js.map +1 -0
  319. package/web/.next/server/chunks/ssr/[root-of-the-server]__f5614810._.js +3 -0
  320. package/web/.next/server/chunks/ssr/{[root-of-the-server]__090f24cb._.js.map → [root-of-the-server]__f5614810._.js.map} +1 -1
  321. package/web/.next/server/chunks/ssr/[root-of-the-server]__fe5db6b2._.js +3 -0
  322. package/web/.next/server/chunks/ssr/[root-of-the-server]__fe5db6b2._.js.map +1 -0
  323. package/web/.next/server/chunks/ssr/_037e85c7._.js +3 -0
  324. package/web/.next/server/chunks/ssr/_037e85c7._.js.map +1 -0
  325. package/web/.next/server/chunks/ssr/{_774cbf7d._.js → _133ae3de._.js} +2 -2
  326. package/web/.next/server/chunks/ssr/{_774cbf7d._.js.map → _133ae3de._.js.map} +1 -1
  327. package/web/.next/server/chunks/ssr/_1879404a._.js +1 -1
  328. package/web/.next/server/chunks/ssr/_1879404a._.js.map +1 -1
  329. package/web/.next/server/chunks/ssr/_295fffde._.js.map +1 -1
  330. package/web/.next/server/chunks/ssr/_29b8ed64._.js +3 -0
  331. package/web/.next/server/chunks/ssr/_29b8ed64._.js.map +1 -0
  332. package/web/.next/server/chunks/ssr/_2bc302d1._.js +3 -0
  333. package/web/.next/server/chunks/ssr/_2bc302d1._.js.map +1 -0
  334. package/web/.next/server/chunks/ssr/_35294e79._.js +3 -0
  335. package/web/.next/server/chunks/ssr/_35294e79._.js.map +1 -0
  336. package/web/.next/server/chunks/ssr/_3683083e._.js +3 -0
  337. package/web/.next/server/chunks/ssr/_3683083e._.js.map +1 -0
  338. package/web/.next/server/chunks/ssr/_45496654._.js.map +1 -1
  339. package/web/.next/server/chunks/ssr/_4b57bcc3._.js +9 -0
  340. package/web/.next/server/chunks/ssr/_4b57bcc3._.js.map +1 -0
  341. package/web/.next/server/chunks/ssr/_519d77a9._.js +3 -0
  342. package/web/.next/server/chunks/ssr/_519d77a9._.js.map +1 -0
  343. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  344. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  345. package/web/.next/server/chunks/ssr/_82db03fd._.js +3 -0
  346. package/web/.next/server/chunks/ssr/_82db03fd._.js.map +1 -0
  347. package/web/.next/server/chunks/ssr/_8c3086bf._.js +3 -0
  348. package/web/.next/server/chunks/ssr/_8c3086bf._.js.map +1 -0
  349. package/web/.next/server/chunks/ssr/_9173e475._.js +21 -0
  350. package/web/.next/server/chunks/ssr/_9173e475._.js.map +1 -0
  351. package/web/.next/server/chunks/ssr/_946a7fc6._.js +1 -1
  352. package/web/.next/server/chunks/ssr/_946a7fc6._.js.map +1 -1
  353. package/web/.next/server/chunks/ssr/{_81e7a131._.js → _a08047ef._.js} +2 -2
  354. package/web/.next/server/chunks/ssr/_a08047ef._.js.map +1 -0
  355. package/web/.next/server/chunks/ssr/_bc03ac82._.js +4 -0
  356. package/web/.next/server/chunks/ssr/_bc03ac82._.js.map +1 -0
  357. package/web/.next/server/chunks/ssr/_d4c0792b._.js +3 -0
  358. package/web/.next/server/chunks/ssr/_d4c0792b._.js.map +1 -0
  359. package/web/.next/server/chunks/ssr/_e61d032d._.js +3 -0
  360. package/web/.next/server/chunks/ssr/_e61d032d._.js.map +1 -0
  361. package/web/.next/server/chunks/ssr/_e65abbd1._.js +3 -0
  362. package/web/.next/server/chunks/ssr/_e65abbd1._.js.map +1 -0
  363. package/web/.next/server/chunks/ssr/_f86fc1bf._.js +1 -1
  364. package/web/.next/server/chunks/ssr/_f86fc1bf._.js.map +1 -1
  365. package/web/.next/server/chunks/ssr/_f8c55130._.js +1 -1
  366. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  367. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  368. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
  369. package/web/.next/server/chunks/ssr/node_modules__pnpm_28a53b5d._.js +3 -0
  370. package/web/.next/server/chunks/ssr/node_modules__pnpm_28a53b5d._.js.map +1 -0
  371. package/web/.next/server/chunks/ssr/src_presentation_web_47181610._.js +3 -0
  372. package/web/.next/server/chunks/ssr/src_presentation_web_47181610._.js.map +1 -0
  373. package/web/.next/server/chunks/ssr/src_presentation_web_5d3f4199._.js +3 -0
  374. package/web/.next/server/chunks/ssr/src_presentation_web_5d3f4199._.js.map +1 -0
  375. package/web/.next/server/chunks/ssr/src_presentation_web_6159fef8._.js +1 -1
  376. package/web/.next/server/chunks/ssr/src_presentation_web_6159fef8._.js.map +1 -1
  377. package/web/.next/server/chunks/ssr/src_presentation_web_61d96ba8._.js +3 -0
  378. package/web/.next/server/chunks/ssr/src_presentation_web_61d96ba8._.js.map +1 -0
  379. package/web/.next/server/chunks/ssr/src_presentation_web_6994959a._.js +3 -0
  380. package/web/.next/server/chunks/ssr/src_presentation_web_6994959a._.js.map +1 -0
  381. package/web/.next/server/chunks/ssr/src_presentation_web_77dadf68._.js +32 -0
  382. package/web/.next/server/chunks/ssr/src_presentation_web_77dadf68._.js.map +1 -0
  383. package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js +3 -0
  384. package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js.map +1 -0
  385. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_c3f6f57e.js +3 -0
  386. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_c3f6f57e.js.map +1 -0
  387. package/web/.next/server/chunks/ssr/src_presentation_web_ad42cc73._.js +1 -1
  388. package/web/.next/server/chunks/ssr/src_presentation_web_ad42cc73._.js.map +1 -1
  389. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_8514dfcd._.js +32 -0
  390. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_8514dfcd._.js.map +1 -0
  391. package/web/.next/server/chunks/ssr/src_presentation_web_b95ed206._.js +3 -0
  392. package/web/.next/server/chunks/ssr/src_presentation_web_b95ed206._.js.map +1 -0
  393. package/web/.next/server/chunks/ssr/src_presentation_web_bade80bd._.js +3 -0
  394. package/web/.next/server/chunks/ssr/src_presentation_web_bade80bd._.js.map +1 -0
  395. package/web/.next/server/chunks/ssr/src_presentation_web_c543cf3e._.js +3 -0
  396. package/web/.next/server/chunks/ssr/src_presentation_web_c543cf3e._.js.map +1 -0
  397. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +1 -1
  398. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -1
  399. package/web/.next/server/chunks/ssr/src_presentation_web_components_common_base-drawer_base-drawer_tsx_97dfbbc8._.js +1 -1
  400. package/web/.next/server/chunks/ssr/src_presentation_web_components_common_base-drawer_base-drawer_tsx_97dfbbc8._.js.map +1 -1
  401. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js +1 -1
  402. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js.map +1 -1
  403. package/web/.next/server/chunks/ssr/src_presentation_web_components_ui_dropdown-menu_tsx_229332e3._.js +3 -0
  404. package/web/.next/server/chunks/ssr/src_presentation_web_components_ui_dropdown-menu_tsx_229332e3._.js.map +1 -0
  405. package/web/.next/server/chunks/ssr/translations_1562ae1a._.js +3 -0
  406. package/web/.next/server/chunks/ssr/translations_1562ae1a._.js.map +1 -0
  407. package/web/.next/server/pages/500.html +2 -2
  408. package/web/.next/server/server-reference-manifest.js +1 -1
  409. package/web/.next/server/server-reference-manifest.json +184 -72
  410. package/web/.next/static/chunks/019e71634c720ede.js +1 -0
  411. package/web/.next/static/chunks/040c5ff84a8ae1a3.js +7 -0
  412. package/web/.next/static/chunks/092ac28f5a4422a0.js +19 -0
  413. package/web/.next/static/chunks/0bd78b0cf1c1421f.js +1 -0
  414. package/web/.next/static/chunks/{996e4ea45364bf3c.js → 18c21c4f9f58b69a.js} +3 -3
  415. package/web/.next/static/chunks/2b5aea3575387b3a.js +1 -0
  416. package/web/.next/static/chunks/2cbe80f8e84d59a8.js +1 -0
  417. package/web/.next/static/chunks/{503d2e86f83285f9.js → 3219b06f6a34e573.js} +1 -1
  418. package/web/.next/static/chunks/37e434e579ecfa02.js +1 -0
  419. package/web/.next/static/chunks/4a7cf3b09e0495a4.js +1 -0
  420. package/web/.next/static/chunks/{83fc7ea32e18c9a5.js → 4ea617a22e21fb04.js} +1 -1
  421. package/web/.next/static/chunks/54d1d5a646a12d76.js +1 -0
  422. package/web/.next/static/chunks/{9e9b60f127270dfd.js → 553be530f22710a7.js} +1 -1
  423. package/web/.next/static/chunks/5795b9f399523c9e.js +1 -0
  424. package/web/.next/static/chunks/{d488e6b5cbbc6833.js → 6a88df64eaeb6322.js} +1 -1
  425. package/web/.next/static/chunks/{2fe20598e1b4793a.js → 6b2859ea368e7df3.js} +3 -3
  426. package/web/.next/static/chunks/6d8cae68371a845d.js +1 -0
  427. package/web/.next/static/chunks/{a2601dbbcb657c7d.js → 78607d521d916531.js} +1 -1
  428. package/web/.next/static/chunks/{7bf6ed16395220c4.js → 7d5a7551d452463d.js} +2 -2
  429. package/web/.next/static/chunks/80e778136b2f4c92.js +1 -0
  430. package/web/.next/static/chunks/a62fb058d660bea3.js +3 -0
  431. package/web/.next/static/chunks/adf16efe8bac05e9.css +1 -0
  432. package/web/.next/static/chunks/b0474319e5a50043.js +1 -0
  433. package/web/.next/static/chunks/b85532fb1545927c.js +5 -0
  434. package/web/.next/static/chunks/e0ae4dbd97b7af4c.js +1 -0
  435. package/web/.next/static/chunks/{2af89379fde6831d.js → f70998ac93012aef.js} +1 -1
  436. package/web/.next/server/chunks/ssr/[root-of-the-server]__013a0318._.js +0 -3
  437. package/web/.next/server/chunks/ssr/[root-of-the-server]__013a0318._.js.map +0 -1
  438. package/web/.next/server/chunks/ssr/[root-of-the-server]__090f24cb._.js +0 -3
  439. package/web/.next/server/chunks/ssr/[root-of-the-server]__24756fa9._.js +0 -12
  440. package/web/.next/server/chunks/ssr/[root-of-the-server]__24756fa9._.js.map +0 -1
  441. package/web/.next/server/chunks/ssr/[root-of-the-server]__70986695._.js +0 -3
  442. package/web/.next/server/chunks/ssr/[root-of-the-server]__70986695._.js.map +0 -1
  443. package/web/.next/server/chunks/ssr/[root-of-the-server]__7aa484f5._.js +0 -3
  444. package/web/.next/server/chunks/ssr/[root-of-the-server]__87bc4dac._.js.map +0 -1
  445. package/web/.next/server/chunks/ssr/[root-of-the-server]__a3a4ddef._.js +0 -3
  446. package/web/.next/server/chunks/ssr/[root-of-the-server]__a3a4ddef._.js.map +0 -1
  447. package/web/.next/server/chunks/ssr/[root-of-the-server]__a4222b95._.js +0 -3
  448. package/web/.next/server/chunks/ssr/[root-of-the-server]__a4222b95._.js.map +0 -1
  449. package/web/.next/server/chunks/ssr/[root-of-the-server]__a5ea76a6._.js +0 -3
  450. package/web/.next/server/chunks/ssr/[root-of-the-server]__a5ea76a6._.js.map +0 -1
  451. package/web/.next/server/chunks/ssr/[root-of-the-server]__a6f2b763._.js +0 -3
  452. package/web/.next/server/chunks/ssr/[root-of-the-server]__a6f2b763._.js.map +0 -1
  453. package/web/.next/server/chunks/ssr/[root-of-the-server]__f3ca7bea._.js +0 -3
  454. package/web/.next/server/chunks/ssr/[root-of-the-server]__f3ca7bea._.js.map +0 -1
  455. package/web/.next/server/chunks/ssr/_0277d3b5._.js +0 -21
  456. package/web/.next/server/chunks/ssr/_0277d3b5._.js.map +0 -1
  457. package/web/.next/server/chunks/ssr/_44531b76._.js +0 -9
  458. package/web/.next/server/chunks/ssr/_44531b76._.js.map +0 -1
  459. package/web/.next/server/chunks/ssr/_5dec4047._.js +0 -3
  460. package/web/.next/server/chunks/ssr/_5dec4047._.js.map +0 -1
  461. package/web/.next/server/chunks/ssr/_73aa3b20._.js +0 -3
  462. package/web/.next/server/chunks/ssr/_73aa3b20._.js.map +0 -1
  463. package/web/.next/server/chunks/ssr/_81e7a131._.js.map +0 -1
  464. package/web/.next/server/chunks/ssr/_869a3a15._.js +0 -3
  465. package/web/.next/server/chunks/ssr/_869a3a15._.js.map +0 -1
  466. package/web/.next/server/chunks/ssr/_b227ff50._.js +0 -3
  467. package/web/.next/server/chunks/ssr/_b227ff50._.js.map +0 -1
  468. package/web/.next/server/chunks/ssr/_d75dcb43._.js +0 -3
  469. package/web/.next/server/chunks/ssr/_d75dcb43._.js.map +0 -1
  470. package/web/.next/server/chunks/ssr/_e071ba48._.js +0 -3
  471. package/web/.next/server/chunks/ssr/_e071ba48._.js.map +0 -1
  472. package/web/.next/server/chunks/ssr/_eff1b518._.js +0 -3
  473. package/web/.next/server/chunks/ssr/_eff1b518._.js.map +0 -1
  474. package/web/.next/server/chunks/ssr/_f227429a._.js +0 -3
  475. package/web/.next/server/chunks/ssr/_f227429a._.js.map +0 -1
  476. package/web/.next/server/chunks/ssr/src_presentation_web_36f2bc45._.js +0 -3
  477. package/web/.next/server/chunks/ssr/src_presentation_web_36f2bc45._.js.map +0 -1
  478. package/web/.next/server/chunks/ssr/src_presentation_web_486908de._.js +0 -3
  479. package/web/.next/server/chunks/ssr/src_presentation_web_486908de._.js.map +0 -1
  480. package/web/.next/server/chunks/ssr/src_presentation_web_5c3596bc._.js +0 -3
  481. package/web/.next/server/chunks/ssr/src_presentation_web_5c3596bc._.js.map +0 -1
  482. package/web/.next/server/chunks/ssr/src_presentation_web_6326f81e._.js +0 -3
  483. package/web/.next/server/chunks/ssr/src_presentation_web_6326f81e._.js.map +0 -1
  484. package/web/.next/server/chunks/ssr/src_presentation_web_6b2fdcd8._.js +0 -3
  485. package/web/.next/server/chunks/ssr/src_presentation_web_6b2fdcd8._.js.map +0 -1
  486. package/web/.next/server/chunks/ssr/src_presentation_web_74703c9f._.js +0 -3
  487. package/web/.next/server/chunks/ssr/src_presentation_web_74703c9f._.js.map +0 -1
  488. package/web/.next/server/chunks/ssr/src_presentation_web_a8056dac._.js +0 -3
  489. package/web/.next/server/chunks/ssr/src_presentation_web_a8056dac._.js.map +0 -1
  490. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +0 -32
  491. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js.map +0 -1
  492. package/web/.next/server/chunks/ssr/src_presentation_web_b00bfb08._.js +0 -3
  493. package/web/.next/server/chunks/ssr/src_presentation_web_b00bfb08._.js.map +0 -1
  494. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +0 -3
  495. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +0 -1
  496. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +0 -3
  497. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +0 -1
  498. package/web/.next/server/chunks/ssr/src_presentation_web_f1edcf5e._.js +0 -3
  499. package/web/.next/server/chunks/ssr/src_presentation_web_f1edcf5e._.js.map +0 -1
  500. package/web/.next/server/chunks/ssr/src_presentation_web_f9436804._.js +0 -3
  501. package/web/.next/server/chunks/ssr/src_presentation_web_f9436804._.js.map +0 -1
  502. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js +0 -3
  503. package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js.map +0 -1
  504. package/web/.next/static/chunks/06b9d6dbf635c370.css +0 -1
  505. package/web/.next/static/chunks/1ae0cf5be30ef398.js +0 -1
  506. package/web/.next/static/chunks/3a71cab38909921e.js +0 -1
  507. package/web/.next/static/chunks/4e53adb5d07b7e3d.js +0 -1
  508. package/web/.next/static/chunks/5e7ac3508bef115f.js +0 -1
  509. package/web/.next/static/chunks/761a7c542b358739.js +0 -1
  510. package/web/.next/static/chunks/927442d2628f6e22.js +0 -1
  511. package/web/.next/static/chunks/a31f2264cedb23e9.js +0 -1
  512. package/web/.next/static/chunks/abf7d1b66555b758.js +0 -7
  513. package/web/.next/static/chunks/b99506a6f7bc2fa8.js +0 -1
  514. package/web/.next/static/chunks/d984d1d8d506291c.js +0 -7
  515. package/web/.next/static/chunks/e843a0d8e8c645c4.js +0 -1
  516. package/web/.next/static/chunks/f5ed0232d50b1ec8.js +0 -19
  517. /package/web/.next/static/{6GBQ7MHEYpZbJzqULwvXh → t-O8eMjJCUhhtd6CgtTXI}/_buildManifest.js +0 -0
  518. /package/web/.next/static/{6GBQ7MHEYpZbJzqULwvXh → t-O8eMjJCUhhtd6CgtTXI}/_clientMiddlewareManifest.json +0 -0
  519. /package/web/.next/static/{6GBQ7MHEYpZbJzqULwvXh → t-O8eMjJCUhhtd6CgtTXI}/_ssgManifest.js +0 -0
@@ -1,3 +0,0 @@
1
- module.exports=[16533,a=>{"use strict";var b=a.i(96960),c=a.i(69845),d=a.i(52313),e=(a,b)=>()=>(b||a((b={exports:{}}).exports,b),b.exports),f=e((a,b)=>{var c=Object.defineProperty,d=(a,b)=>()=>(b||a((b={exports:{}}).exports,b),b.exports),e=(a,b,d)=>{let e;return(e="symbol"!=typeof b?b+"":b)in a?c(a,e,{enumerable:!0,configurable:!0,writable:!0,value:d}):a[e]=d},f=d((a,b)=>{function c(a,b){a[b]?a[b]++:a[b]=1}function d(a,b){--a[b]||delete a[b]}function f(a,b,c,d){var e=""+b,f=""+c;if(!a&&e>f){var g=e;e=f,f=g}return e+"\x01"+f+"\x01"+(void 0===d?"\0":d)}function g(a,b){return f(a,b.v,b.w,b.name)}b.exports=class{constructor(a){e(this,"_isDirected",!0),e(this,"_isMultigraph",!1),e(this,"_isCompound",!1),e(this,"_label"),e(this,"_defaultNodeLabelFn",()=>{}),e(this,"_defaultEdgeLabelFn",()=>{}),e(this,"_nodes",{}),e(this,"_in",{}),e(this,"_preds",{}),e(this,"_out",{}),e(this,"_sucs",{}),e(this,"_edgeObjs",{}),e(this,"_edgeLabels",{}),e(this,"_nodeCount",0),e(this,"_edgeCount",0),e(this,"_parent"),e(this,"_children"),a&&(this._isDirected=!Object.hasOwn(a,"directed")||a.directed,this._isMultigraph=!!Object.hasOwn(a,"multigraph")&&a.multigraph,this._isCompound=!!Object.hasOwn(a,"compound")&&a.compound),this._isCompound&&(this._parent={},this._children={},this._children["\0"]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(a){return this._label=a,this}graph(){return this._label}setDefaultNodeLabel(a){return this._defaultNodeLabelFn=a,"function"!=typeof a&&(this._defaultNodeLabelFn=()=>a),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var a=this;return this.nodes().filter(b=>0===Object.keys(a._in[b]).length)}sinks(){var a=this;return this.nodes().filter(b=>0===Object.keys(a._out[b]).length)}setNodes(a,b){var c=arguments,d=this;return a.forEach(function(a){c.length>1?d.setNode(a,b):d.setNode(a)}),this}setNode(a,b){return Object.hasOwn(this._nodes,a)?arguments.length>1&&(this._nodes[a]=b):(this._nodes[a]=arguments.length>1?b:this._defaultNodeLabelFn(a),this._isCompound&&(this._parent[a]="\0",this._children[a]={},this._children["\0"][a]=!0),this._in[a]={},this._preds[a]={},this._out[a]={},this._sucs[a]={},++this._nodeCount),this}node(a){return this._nodes[a]}hasNode(a){return Object.hasOwn(this._nodes,a)}removeNode(a){var b=this;if(Object.hasOwn(this._nodes,a)){var c=a=>b.removeEdge(b._edgeObjs[a]);delete this._nodes[a],this._isCompound&&(this._removeFromParentsChildList(a),delete this._parent[a],this.children(a).forEach(function(a){b.setParent(a)}),delete this._children[a]),Object.keys(this._in[a]).forEach(c),delete this._in[a],delete this._preds[a],Object.keys(this._out[a]).forEach(c),delete this._out[a],delete this._sucs[a],--this._nodeCount}return this}setParent(a,b){if(!this._isCompound)throw Error("Cannot set parent in a non-compound graph");if(void 0===b)b="\0";else{b+="";for(var c=b;void 0!==c;c=this.parent(c))if(c===a)throw Error("Setting "+b+" as parent of "+a+" would create a cycle");this.setNode(b)}return this.setNode(a),this._removeFromParentsChildList(a),this._parent[a]=b,this._children[b][a]=!0,this}_removeFromParentsChildList(a){delete this._children[this._parent[a]][a]}parent(a){if(this._isCompound){var b=this._parent[a];if("\0"!==b)return b}}children(a="\0"){if(this._isCompound){var b=this._children[a];if(b)return Object.keys(b)}else{if("\0"===a)return this.nodes();if(this.hasNode(a))return[]}}predecessors(a){var b=this._preds[a];if(b)return Object.keys(b)}successors(a){var b=this._sucs[a];if(b)return Object.keys(b)}neighbors(a){var b=this.predecessors(a);if(b){let d=new Set(b);for(var c of this.successors(a))d.add(c);return Array.from(d.values())}}isLeaf(a){return 0===(this.isDirected()?this.successors(a):this.neighbors(a)).length}filterNodes(a){var b=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});b.setGraph(this.graph());var c=this;Object.entries(this._nodes).forEach(function([c,d]){a(c)&&b.setNode(c,d)}),Object.values(this._edgeObjs).forEach(function(a){b.hasNode(a.v)&&b.hasNode(a.w)&&b.setEdge(a,c.edge(a))});var d={};return this._isCompound&&b.nodes().forEach(a=>b.setParent(a,function a(e){var f=c.parent(e);return void 0===f||b.hasNode(f)?(d[e]=f,f):f in d?d[f]:a(f)}(a))),b}setDefaultEdgeLabel(a){return this._defaultEdgeLabelFn=a,"function"!=typeof a&&(this._defaultEdgeLabelFn=()=>a),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(a,b){var c=this,d=arguments;return a.reduce(function(a,e){return d.length>1?c.setEdge(a,e,b):c.setEdge(a,e),e}),this}setEdge(){var a,b,d,e,g=!1,h=arguments[0];"object"==typeof h&&null!==h&&"v"in h?(a=h.v,b=h.w,d=h.name,2==arguments.length&&(e=arguments[1],g=!0)):(a=h,b=arguments[1],d=arguments[3],arguments.length>2&&(e=arguments[2],g=!0)),a=""+a,b=""+b,void 0!==d&&(d=""+d);var i=f(this._isDirected,a,b,d);if(Object.hasOwn(this._edgeLabels,i))return g&&(this._edgeLabels[i]=e),this;if(void 0!==d&&!this._isMultigraph)throw Error("Cannot set a named edge when isMultigraph = false");this.setNode(a),this.setNode(b),this._edgeLabels[i]=g?e:this._defaultEdgeLabelFn(a,b,d);var j=function(a,b,c,d){var e=""+b,f=""+c;if(!a&&e>f){var g=e;e=f,f=g}var h={v:e,w:f};return d&&(h.name=d),h}(this._isDirected,a,b,d);return a=j.v,b=j.w,Object.freeze(j),this._edgeObjs[i]=j,c(this._preds[b],a),c(this._sucs[a],b),this._in[b][i]=j,this._out[a][i]=j,this._edgeCount++,this}edge(a,b,c){var d=1==arguments.length?g(this._isDirected,arguments[0]):f(this._isDirected,a,b,c);return this._edgeLabels[d]}edgeAsObj(){let a=this.edge(...arguments);return"object"!=typeof a?{label:a}:a}hasEdge(a,b,c){var d=1==arguments.length?g(this._isDirected,arguments[0]):f(this._isDirected,a,b,c);return Object.hasOwn(this._edgeLabels,d)}removeEdge(a,b,c){var e=1==arguments.length?g(this._isDirected,arguments[0]):f(this._isDirected,a,b,c),h=this._edgeObjs[e];return h&&(a=h.v,b=h.w,delete this._edgeLabels[e],delete this._edgeObjs[e],d(this._preds[b],a),d(this._sucs[a],b),delete this._in[b][e],delete this._out[a][e],this._edgeCount--),this}inEdges(a,b){return this.isDirected()?this.filterEdges(this._in[a],a,b):this.nodeEdges(a,b)}outEdges(a,b){return this.isDirected()?this.filterEdges(this._out[a],a,b):this.nodeEdges(a,b)}nodeEdges(a,b){if(a in this._nodes)return this.filterEdges({...this._in[a],...this._out[a]},a,b)}filterEdges(a,b,c){if(a){var d=Object.values(a);return c?d.filter(function(a){return a.v===b&&a.w===c||a.v===c&&a.w===b}):d}}}}),g=d((a,b)=>{b.exports="3.0.2"}),h=d((a,b)=>{b.exports={Graph:f(),version:g()}}),i=d((a,b)=>{var c=f();b.exports={write:function(a){var b,c,d={options:{directed:a.isDirected(),multigraph:a.isMultigraph(),compound:a.isCompound()},nodes:(b=a).nodes().map(function(a){var c=b.node(a),d=b.parent(a),e={v:a};return void 0!==c&&(e.value=c),void 0!==d&&(e.parent=d),e}),edges:(c=a).edges().map(function(a){var b=c.edge(a),d={v:a.v,w:a.w};return void 0!==a.name&&(d.name=a.name),void 0!==b&&(d.value=b),d})};return void 0!==a.graph()&&(d.value=structuredClone(a.graph())),d},read:function(a){var b=new c(a.options).setGraph(a.value);return a.nodes.forEach(function(a){b.setNode(a.v,a.value),a.parent&&b.setParent(a.v,a.parent)}),a.edges.forEach(function(a){b.setEdge({v:a.v,w:a.w,name:a.name},a.value)}),b}}}),j=d((a,b)=>{b.exports=function(a,b,d,e){return function(a,b,c,d){var e={},f=!0,g=0,h=a.nodes(),i=function(a){var b=c(a);e[a.v].distance+b<e[a.w].distance&&(e[a.w]={distance:e[a.v].distance+b,predecessor:a.v},f=!0)},j=function(){h.forEach(function(a){d(a).forEach(function(b){var c=b.v===a?b.v:b.w,d=c===b.v?b.w:b.v;i({v:c,w:d})})})};h.forEach(function(a){e[a]={distance:a===b?0:1/0}});for(var k=h.length,l=1;l<k&&(f=!1,g++,j(),f);l++);if(g===k-1&&(f=!1,j(),f))throw Error("The graph contains a negative weight cycle");return e}(a,String(b),d||c,e||function(b){return a.outEdges(b)})};var c=()=>1}),k=d((a,b)=>{b.exports=function(a){var b,c={},d=[];return a.nodes().forEach(function(e){b=[],function d(e){Object.hasOwn(c,e)||(c[e]=!0,b.push(e),a.successors(e).forEach(d),a.predecessors(e).forEach(d))}(e),b.length&&d.push(b)}),d}}),l=d((a,b)=>{b.exports=class{constructor(){e(this,"_arr",[]),e(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(a){return a.key})}has(a){return Object.hasOwn(this._keyIndices,a)}priority(a){var b=this._keyIndices[a];if(void 0!==b)return this._arr[b].priority}min(){if(0===this.size())throw Error("Queue underflow");return this._arr[0].key}add(a,b){var c=this._keyIndices;if(!Object.hasOwn(c,a=String(a))){var d=this._arr,e=d.length;return c[a]=e,d.push({key:a,priority:b}),this._decrease(e),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var a=this._arr.pop();return delete this._keyIndices[a.key],this._heapify(0),a.key}decrease(a,b){var c=this._keyIndices[a];if(b>this._arr[c].priority)throw Error("New priority is greater than current priority. Key: "+a+" Old: "+this._arr[c].priority+" New: "+b);this._arr[c].priority=b,this._decrease(c)}_heapify(a){var b=this._arr,c=2*a,d=c+1,e=a;c<b.length&&(e=b[c].priority<b[e].priority?c:e,d<b.length&&(e=b[d].priority<b[e].priority?d:e),e!==a&&(this._swap(a,e),this._heapify(e)))}_decrease(a){for(var b,c=this._arr,d=c[a].priority;0!==a&&!(c[b=a>>1].priority<d);)this._swap(a,b),a=b}_swap(a,b){var c=this._arr,d=this._keyIndices,e=c[a],f=c[b];c[a]=f,c[b]=e,d[f.key]=a,d[e.key]=b}}}),m=d((a,b)=>{var c=l();b.exports=function(a,b,e,f){return function(a,b,d,e){var f,g,h={},i=new c,j=function(a){var b=a.v!==f?a.v:a.w,c=h[b],e=d(a),j=g.distance+e;if(e<0)throw Error("dijkstra does not allow negative edge weights. Bad edge: "+a+" Weight: "+e);j<c.distance&&(c.distance=j,c.predecessor=f,i.decrease(b,j))};for(a.nodes().forEach(function(a){var c=a===b?0:1/0;h[a]={distance:c},i.add(a,c)});i.size()>0&&(g=h[f=i.removeMin()]).distance!==1/0;)e(f).forEach(j);return h}(a,String(b),e||d,f||function(b){return a.outEdges(b)})};var d=()=>1}),n=d((a,b)=>{var c=m();b.exports=function(a,b,d){return a.nodes().reduce(function(e,f){return e[f]=c(a,f,b,d),e},{})}}),o=d((a,b)=>{b.exports=function(a,b,c){if(void 0!==a[b].predecessor)throw Error("Invalid source vertex");if(void 0===a[c].predecessor&&c!==b)throw Error("Invalid destination vertex");return{weight:a[c].distance,path:function(a,b,c){for(var d=[],e=c;e!==b;)d.push(e),e=a[e].predecessor;return d.push(b),d.reverse()}(a,b,c)}}}),p=d((a,b)=>{b.exports=function(a){var b=0,c=[],d={},e=[];return a.nodes().forEach(function(f){Object.hasOwn(d,f)||function f(g){var h=d[g]={onStack:!0,lowlink:b,index:b++};if(c.push(g),a.successors(g).forEach(function(a){Object.hasOwn(d,a)?d[a].onStack&&(h.lowlink=Math.min(h.lowlink,d[a].index)):(f(a),h.lowlink=Math.min(h.lowlink,d[a].lowlink))}),h.lowlink===h.index){var i,j=[];do d[i=c.pop()].onStack=!1,j.push(i);while(g!==i)e.push(j)}}(f)}),e}}),q=d((a,b)=>{var c=p();b.exports=function(a){return c(a).filter(function(b){return b.length>1||1===b.length&&a.hasEdge(b[0],b[0])})}}),r=d((a,b)=>{b.exports=function(a,b,d){var e,f,g,h,i;return e=a,f=b||c,g=d||function(b){return a.outEdges(b)},h={},(i=e.nodes()).forEach(function(a){h[a]={},h[a][a]={distance:0},i.forEach(function(b){a!==b&&(h[a][b]={distance:1/0})}),g(a).forEach(function(b){var c=b.v===a?b.w:b.v,d=f(b);h[a][c]={distance:d,predecessor:a}})}),i.forEach(function(a){var b=h[a];i.forEach(function(c){var d=h[c];i.forEach(function(c){var e=d[a],f=b[c],g=d[c],h=e.distance+f.distance;h<g.distance&&(g.distance=h,g.predecessor=f.predecessor)})})}),h};var c=()=>1}),s=d((a,b)=>{function c(a){var b={},c={},e=[];if(a.sinks().forEach(function f(g){if(Object.hasOwn(c,g))throw new d;Object.hasOwn(b,g)||(c[g]=!0,b[g]=!0,a.predecessors(g).forEach(f),delete c[g],e.push(g))}),Object.keys(b).length!==a.nodeCount())throw new d;return e}var d=class extends Error{constructor(){super(...arguments)}};b.exports=c,c.CycleException=d}),t=d((a,b)=>{var c=s();b.exports=function(a){try{c(a)}catch(a){if(a instanceof c.CycleException)return!1;throw a}return!0}}),u=d((a,b)=>{b.exports=function(a,b,c,d,e){Array.isArray(b)||(b=[b]);var f=(a.isDirected()?a.successors:a.neighbors).bind(a),g={};return b.forEach(function(b){if(!a.hasNode(b))throw Error("Graph does not have node: "+b);e=function a(b,c,d,e,f,g,h){return Object.hasOwn(e,c)||(e[c]=!0,d||(h=g(h,c)),f(c).forEach(function(c){h=a(b,c,d,e,f,g,h)}),d&&(h=g(h,c))),h}(a,b,"post"===c,g,f,d,e)}),e}}),v=d((a,b)=>{var c=u();b.exports=function(a,b,d){return c(a,b,d,function(a,b){return a.push(b),a},[])}}),w=d((a,b)=>{var c=v();b.exports=function(a,b){return c(a,b,"post")}}),x=d((a,b)=>{var c=v();b.exports=function(a,b){return c(a,b,"pre")}}),y=d((a,b)=>{var c=f(),d=l();b.exports=function(a,b){var e,f=new c,g={},h=new d;function i(a){var c=a.v===e?a.w:a.v,d=h.priority(c);if(void 0!==d){var f=b(a);f<d&&(g[c]=e,h.decrease(c,f))}}if(0===a.nodeCount())return f;a.nodes().forEach(function(a){h.add(a,1/0),f.setNode(a)}),h.decrease(a.nodes()[0],0);for(var j=!1;h.size()>0;){if(Object.hasOwn(g,e=h.removeMin()))f.setEdge(e,g[e]);else{if(j)throw Error("Input graph is not connected: "+a);j=!0}a.nodeEdges(e).forEach(i)}return f}}),z=d((a,b)=>{var c=m(),d=j();b.exports=function(a,b,e,f){return function(a,b,e,f){if(void 0===e)return c(a,b,e,f);for(var g=!1,h=a.nodes(),i=0;i<h.length;i++){for(var j=f(h[i]),k=0;k<j.length;k++){var l=j[k],m=l.v===h[i]?l.v:l.w,n=m===l.v?l.w:l.v;0>e({v:m,w:n})&&(g=!0)}if(g)return d(a,b,e,f)}return c(a,b,e,f)}(a,b,e,f||function(b){return a.outEdges(b)})}}),A=d((a,b)=>{b.exports={bellmanFord:j(),components:k(),dijkstra:m(),dijkstraAll:n(),extractPath:o(),findCycles:q(),floydWarshall:r(),isAcyclic:t(),postorder:w(),preorder:x(),prim:y(),shortestPaths:z(),reduce:u(),tarjan:p(),topsort:s()}}),B=h();b.exports={Graph:B.Graph,json:i(),alg:A(),version:B.version}}),g=e((a,b)=>{function c(a){a._prev._next=a._next,a._next._prev=a._prev,delete a._next,delete a._prev}function d(a,b){if("_next"!==a&&"_prev"!==a)return b}b.exports=class{constructor(){let a={};a._next=a._prev=a,this._sentinel=a}dequeue(){let a=this._sentinel,b=a._prev;if(b!==a)return c(b),b}enqueue(a){let b=this._sentinel;a._prev&&a._next&&c(a),a._next=b._next,b._next._prev=a,b._next=a,a._prev=b}toString(){let a=[],b=this._sentinel,c=b._prev;for(;c!==b;)a.push(JSON.stringify(c,d)),c=c._prev;return"["+a.join(", ")+"]"}}}),h=e((a,b)=>{var c=f().Graph,d=g();b.exports=function(a,b){var f,g;let j,k,l,m,n;if(1>=a.nodeCount())return[];let o=(f=a,g=b||e,j=new c,k=0,l=0,f.nodes().forEach(a=>{j.setNode(a,{v:a,in:0,out:0})}),f.edges().forEach(a=>{let b=j.edge(a.v,a.w)||0,c=g(a);j.setEdge(a.v,a.w,b+c),l=Math.max(l,j.node(a.v).out+=c),k=Math.max(k,j.node(a.w).in+=c)}),m=(function(a){let b=[];for(let c=0;c<a;c++)b.push(c);return b})(l+k+3).map(()=>new d),n=k+1,j.nodes().forEach(a=>{i(m,n,j.node(a))}),{graph:j,buckets:m,zeroIdx:n});return(function(a,b,c){let d=[],e=b[b.length-1],f=b[0],g;for(;a.nodeCount();){for(;g=f.dequeue();)h(a,b,c,g);for(;g=e.dequeue();)h(a,b,c,g);if(a.nodeCount()){for(let e=b.length-2;e>0;--e)if(g=b[e].dequeue()){d=d.concat(h(a,b,c,g,!0));break}}}return d})(o.graph,o.buckets,o.zeroIdx).flatMap(b=>a.outEdges(b.v,b.w))};var e=()=>1;function h(a,b,c,d,e){let f=e?[]:void 0;return a.inEdges(d.v).forEach(d=>{let g=a.edge(d),h=a.node(d.v);e&&f.push({v:d.v,w:d.w}),h.out-=g,i(b,c,h)}),a.outEdges(d.v).forEach(d=>{let e=a.edge(d),f=d.w,g=a.node(f);g.in-=e,i(b,c,g)}),a.removeNode(d.v),f}function i(a,b,c){c.out?c.in?a[c.out-c.in+b].enqueue(c):a[a.length-1].enqueue(c):a[0].enqueue(c)}}),i=e((a,b)=>{var c=f().Graph;function d(a,b,c,d){for(var e=d;a.hasNode(e);)e=i(d);return c.dummy=b,a.setNode(e,c),e}b.exports={addBorderNode:function(a,b,c,e){let f={width:0,height:0};return arguments.length>=4&&(f.rank=c,f.order=e),d(a,"border",f,b)},addDummyNode:d,applyWithChunking:e,asNonCompoundGraph:function(a){let b=new c({multigraph:a.isMultigraph()}).setGraph(a.graph());return a.nodes().forEach(c=>{a.children(c).length||b.setNode(c,a.node(c))}),a.edges().forEach(c=>{b.setEdge(c,a.edge(c))}),b},buildLayerMatrix:function(a){let b=j(g(a)+1).map(()=>[]);return a.nodes().forEach(c=>{let d=a.node(c),e=d.rank;void 0!==e&&(b[e][d.order]=c)}),b},intersectRect:function(a,b){let c,d,e=a.x,f=a.y,g=b.x-e,h=b.y-f,i=a.width/2,j=a.height/2;if(!g&&!h)throw Error("Not possible to find intersection inside of the rectangle");return Math.abs(h)*i>Math.abs(g)*j?(h<0&&(j=-j),c=j*g/h,d=j):(g<0&&(i=-i),c=i,d=i*h/g),{x:e+c,y:f+d}},mapValues:function(a,b){let c=b;return"string"==typeof b&&(c=a=>a[b]),Object.entries(a).reduce((a,[b,d])=>(a[b]=c(d,b),a),{})},maxRank:g,normalizeRanks:function(a){let b=e(Math.min,a.nodes().map(b=>{let c=a.node(b).rank;return void 0===c?Number.MAX_VALUE:c}));a.nodes().forEach(c=>{let d=a.node(c);Object.hasOwn(d,"rank")&&(d.rank-=b)})},notime:function(a,b){return b()},partition:function(a,b){let c={lhs:[],rhs:[]};return a.forEach(a=>{b(a)?c.lhs.push(a):c.rhs.push(a)}),c},pick:function(a,b){let c={};for(let d of b)void 0!==a[d]&&(c[d]=a[d]);return c},predecessorWeights:function(a){let b=a.nodes().map(b=>{let c={};return a.inEdges(b).forEach(b=>{c[b.v]=(c[b.v]||0)+a.edge(b).weight}),c});return k(a.nodes(),b)},range:j,removeEmptyRanks:function(a){let b=e(Math.min,a.nodes().map(b=>a.node(b).rank).filter(a=>void 0!==a)),c=[];a.nodes().forEach(d=>{let e=a.node(d).rank-b;c[e]||(c[e]=[]),c[e].push(d)});let d=0,f=a.graph().nodeRankFactor;Array.from(c).forEach((b,c)=>{void 0===b&&c%f!=0?--d:void 0!==b&&d&&b.forEach(b=>a.node(b).rank+=d)})},simplify:function(a){let b=new c().setGraph(a.graph());return a.nodes().forEach(c=>b.setNode(c,a.node(c))),a.edges().forEach(c=>{let d=b.edge(c.v,c.w)||{weight:0,minlen:1},e=a.edge(c);b.setEdge(c.v,c.w,{weight:d.weight+e.weight,minlen:Math.max(d.minlen,e.minlen)})}),b},successorWeights:function(a){let b=a.nodes().map(b=>{let c={};return a.outEdges(b).forEach(b=>{c[b.w]=(c[b.w]||0)+a.edge(b).weight}),c});return k(a.nodes(),b)},time:function(a,b){let c=Date.now();try{return b()}finally{console.log(a+" time: "+(Date.now()-c)+"ms")}},uniqueId:i,zipObject:k};function e(a,b){if(!(b.length>65535))return a.apply(null,b);{let c=function(a,b=65535){let c=[];for(let d=0;d<a.length;d+=b){let e=a.slice(d,d+b);c.push(e)}return c}(b);return a.apply(null,c.map(b=>a.apply(null,b)))}}function g(a){return e(Math.max,a.nodes().map(b=>{let c=a.node(b).rank;return void 0===c?5e-324:c}))}var h=0;function i(a){return a+""+ ++h}function j(a,b,c=1){null==b&&(b=a,a=0);let d=a=>a<b;c<0&&(d=a=>b<a);let e=[];for(let b=a;d(b);b+=c)e.push(b);return e}function k(a,b){return a.reduce((a,c,d)=>(a[c]=b[d],a),{})}}),j=e((a,b)=>{var c=h(),d=i().uniqueId;b.exports={run:function(a){var b,e;let f,g,h;("greedy"===a.graph().acyclicer?c(a,(b=a,a=>b.edge(a).weight)):(f=[],g={},h={},(e=a).nodes().forEach(function a(b){Object.hasOwn(h,b)||(h[b]=!0,g[b]=!0,e.outEdges(b).forEach(b=>{Object.hasOwn(g,b.w)?f.push(b):a(b.w)}),delete g[b])}),f)).forEach(b=>{let c=a.edge(b);a.removeEdge(b),c.forwardName=b.name,c.reversed=!0,a.setEdge(b.w,b.v,c,d("rev"))})},undo:function(a){a.edges().forEach(b=>{let c=a.edge(b);if(c.reversed){a.removeEdge(b);let d=c.forwardName;delete c.reversed,delete c.forwardName,a.setEdge(b.w,b.v,c,d)}})}}}),k=e((a,b)=>{var c=i();b.exports={run:function(a){a.graph().dummyChains=[],a.edges().forEach(b=>(function(a,b){let d,e,f,g=b.v,h=a.node(g).rank,i=b.w,j=a.node(i).rank,k=b.name,l=a.edge(b),m=l.labelRank;if(j!==h+1){for(a.removeEdge(b),f=0,++h;h<j;++f,++h)l.points=[],e={width:0,height:0,edgeLabel:l,edgeObj:b,rank:h},d=c.addDummyNode(a,"edge",e,"_d"),h===m&&(e.width=l.width,e.height=l.height,e.dummy="edge-label",e.labelpos=l.labelpos),a.setEdge(g,d,{weight:l.weight},k),0===f&&a.graph().dummyChains.push(d),g=d;a.setEdge(g,i,{weight:l.weight},k)}})(a,b))},undo:function(a){a.graph().dummyChains.forEach(b=>{let c=a.node(b),d=c.edgeLabel,e;for(a.setEdge(c.edgeObj,d);c.dummy;)e=a.successors(b)[0],a.removeNode(b),d.points.push({x:c.x,y:c.y}),"edge-label"===c.dummy&&(d.x=c.x,d.y=c.y,d.width=c.width,d.height=c.height),b=e,c=a.node(b)})}}}),l=e((a,b)=>{var{applyWithChunking:c}=i();b.exports={longestPath:function(a){var b={};a.sources().forEach(function d(e){var f=a.node(e);if(Object.hasOwn(b,e))return f.rank;b[e]=!0;var g=c(Math.min,a.outEdges(e).map(b=>null==b?1/0:d(b.w)-a.edge(b).minlen));return g===1/0&&(g=0),f.rank=g})},slack:function(a,b){return a.node(b.w).rank-a.node(b.v).rank-a.edge(b).minlen}}}),m=e((a,b)=>{var c=f().Graph,d=l().slack;b.exports=function(a){var b,e,f,g,h=new c({directed:!1}),i=a.nodes()[0],j=a.nodeCount();for(h.setNode(i,{});b=h,e=a,b.nodes().forEach(function a(c){e.nodeEdges(c).forEach(f=>{var g=f.v,h=c===g?f.w:g;b.hasNode(h)||d(e,f)||(b.setNode(h,{}),b.setEdge(c,h,{}),a(h))})}),b.nodeCount()<j;)f=function(a,b){return b.edges().reduce((c,e)=>{let f=1/0;return a.hasNode(e.v)!==a.hasNode(e.w)&&(f=d(b,e)),f<c[0]?[f,e]:c},[1/0,null])[1]}(h,a),g=h.hasNode(f.v)?d(a,f):-d(a,f),function(a,b,c){a.nodes().forEach(a=>b.node(a).rank+=c)}(h,a,g);return h}}),n=e((a,b)=>{var c=m(),d=l().slack,e=l().longestPath,g=f().alg.preorder,h=f().alg.postorder,j=i().simplify;function k(a){e(a=j(a));var b,d,f=c(a);for(p(f),n(f,a);b=q(f);)d=r(f,a,b),s(f,a,b,d)}function n(a,b){var c=h(a,a.nodes());(c=c.slice(0,c.length-1)).forEach(c=>{var d,e,f,g;return d=a,e=b,f=c,g=d.node(f).parent,void(d.edge(f,g).cutvalue=o(d,e,f))})}function o(a,b,c){var d=a.node(c).parent,e=!0,f=b.edge(c,d),g=0;return f||(e=!1,f=b.edge(d,c)),g=f.weight,b.nodeEdges(c).forEach(f=>{var h=f.v===c,i=h?f.w:f.v;if(i!==d){var j,k,l,m=h===e,n=b.edge(f).weight;if(g+=m?n:-n,j=a,k=c,l=i,j.hasEdge(k,l)){var o=a.edge(c,i).cutvalue;g+=m?-o:o}}}),g}function p(a,b){arguments.length<2&&(b=a.nodes()[0]),function a(b,c,d,e,f){var g=d,h=b.node(e);return c[e]=!0,b.neighbors(e).forEach(f=>{Object.hasOwn(c,f)||(d=a(b,c,d,f,e))}),h.low=g,h.lim=d++,f?h.parent=f:delete h.parent,d}(a,{},1,b)}function q(a){return a.edges().find(b=>a.edge(b).cutvalue<0)}function r(a,b,c){var e=c.v,f=c.w;b.hasEdge(e,f)||(e=c.w,f=c.v);var g=a.node(e),h=a.node(f),i=g,j=!1;return g.lim>h.lim&&(i=h,j=!0),b.edges().filter(b=>j===t(a,a.node(b.v),i)&&j!==t(a,a.node(b.w),i)).reduce((a,c)=>d(b,c)<d(b,a)?c:a)}function s(a,b,c,d){var e,f,h,i,j=c.v,k=c.w;a.removeEdge(j,k),a.setEdge(d.v,d.w,{}),p(a),n(a,b),e=a,f=b,h=e.nodes().find(a=>!f.node(a).parent),(i=(i=g(e,h)).slice(1)).forEach(a=>{var b=e.node(a).parent,c=f.edge(a,b),d=!1;c||(c=f.edge(b,a),d=!0),f.node(a).rank=f.node(b).rank+(d?c.minlen:-c.minlen)})}function t(a,b,c){return c.low<=b.lim&&b.lim<=c.lim}b.exports=k,k.initLowLimValues=p,k.initCutValues=n,k.calcCutValue=o,k.leaveEdge=q,k.enterEdge=r,k.exchangeEdges=s}),o=e((a,b)=>{var c=l().longestPath,d=m(),e=n();b.exports=function(a){var b,g=a.graph().ranker;if(g instanceof Function)return g(a);switch(a.graph().ranker){case"network-simplex":default:e(a);break;case"tight-tree":c(b=a),d(b);break;case"longest-path":f(a);case"none":}};var f=c}),p=e((a,b)=>{b.exports=function(a){var b;let c,d,e=(c={},d=0,(b=a).children().forEach(function a(e){let f=d;b.children(e).forEach(a),c[e]={low:f,lim:d++}}),c);a.graph().dummyChains.forEach(b=>{let c=a.node(b),d=c.edgeObj,f=function(a,b,c,d){let e=[],f=[],g=Math.min(b[c].low,b[d].low),h=Math.max(b[c].lim,b[d].lim),i,j;i=c;do e.push(i=a.parent(i));while(i&&(b[i].low>g||h>b[i].lim))for(j=i,i=d;(i=a.parent(i))!==j;)f.push(i);return{path:e.concat(f.reverse()),lca:j}}(a,e,d.v,d.w),g=f.path,h=f.lca,i=0,j=g[0],k=!0;for(;b!==d.w;){if(c=a.node(b),k){for(;(j=g[i])!==h&&a.node(j).maxRank<c.rank;)i++;j===h&&(k=!1)}if(!k){for(;i<g.length-1&&a.node(j=g[i+1]).minRank<=c.rank;)i++;j=g[i]}a.setParent(b,j),b=a.successors(b)[0]}})}}),q=e((a,b)=>{var c=i();b.exports={run:function(a){var b,d,e;let f=c.addDummyNode(a,"root",{},"_root"),g=(d={},(b=a).children().forEach(a=>(function a(c,e){var f=b.children(c);f&&f.length&&f.forEach(b=>a(b,e+1)),d[c]=e})(a,1)),d),h=Object.values(g),i=c.applyWithChunking(Math.max,h)-1,j=2*i+1;a.graph().nestingRoot=f,a.edges().forEach(b=>a.edge(b).minlen*=j);let k=(e=a).edges().reduce((a,b)=>a+e.edge(b).weight,0)+1;a.children().forEach(b=>(function a(b,d,e,f,g,h,i){let j=b.children(i);if(!j.length){i!==d&&b.setEdge(d,i,{weight:0,minlen:e});return}let k=c.addBorderNode(b,"_bt"),l=c.addBorderNode(b,"_bb"),m=b.node(i);b.setParent(k,i),m.borderTop=k,b.setParent(l,i),m.borderBottom=l,j.forEach(c=>{a(b,d,e,f,g,h,c);let j=b.node(c),m=j.borderTop?j.borderTop:c,n=j.borderBottom?j.borderBottom:c,o=j.borderTop?f:2*f,p=m!==n?1:g-h[i]+1;b.setEdge(k,m,{weight:o,minlen:p,nestingEdge:!0}),b.setEdge(n,l,{weight:o,minlen:p,nestingEdge:!0})}),b.parent(i)||b.setEdge(d,k,{weight:0,minlen:g+h[i]})})(a,f,j,k,i,g,b)),a.graph().nodeRankFactor=j},cleanup:function(a){var b=a.graph();a.removeNode(b.nestingRoot),delete b.nestingRoot,a.edges().forEach(b=>{a.edge(b).nestingEdge&&a.removeEdge(b)})}}}),r=e((a,b)=>{var c=i();function d(a,b,d,e,f,g){let h=f[b][g-1],i=c.addDummyNode(a,"border",{width:0,height:0,rank:g,borderType:b},d);f[b][g]=i,a.setParent(i,e),h&&a.setEdge(h,i,{weight:1})}b.exports=function(a){a.children().forEach(function b(c){let e=a.children(c),f=a.node(c);if(e.length&&e.forEach(b),Object.hasOwn(f,"minRank")){f.borderLeft=[],f.borderRight=[];for(let b=f.minRank,e=f.maxRank+1;b<e;++b)d(a,"borderLeft","_bl",c,f,b),d(a,"borderRight","_br",c,f,b)}})}}),s=e((a,b)=>{function c(a){a.nodes().forEach(b=>d(a.node(b))),a.edges().forEach(b=>d(a.edge(b)))}function d(a){let b=a.width;a.width=a.height,a.height=b}function e(a){a.y=-a.y}function f(a){let b=a.x;a.x=a.y,a.y=b}b.exports={adjust:function(a){let b=a.graph().rankdir.toLowerCase();("lr"===b||"rl"===b)&&c(a)},undo:function(a){var b,d;let g=a.graph().rankdir.toLowerCase();("bt"===g||"rl"===g)&&((b=a).nodes().forEach(a=>e(b.node(a))),b.edges().forEach(a=>{let c=b.edge(a);c.points.forEach(e),Object.hasOwn(c,"y")&&e(c)})),("lr"===g||"rl"===g)&&((d=a).nodes().forEach(a=>f(d.node(a))),d.edges().forEach(a=>{let b=d.edge(a);b.points.forEach(f),Object.hasOwn(b,"x")&&f(b)}),c(a))}}}),t=e((a,b)=>{var c=i();b.exports=function(a){let b={},d=a.nodes().filter(b=>!a.children(b).length),e=d.map(b=>a.node(b).rank),f=c.applyWithChunking(Math.max,e),g=c.range(f+1).map(()=>[]);return d.sort((b,c)=>a.node(b).rank-a.node(c).rank).forEach(function c(d){b[d]||(b[d]=!0,g[a.node(d).rank].push(d),a.successors(d).forEach(c))}),g}}),u=e((a,b)=>{var c=i().zipObject;b.exports=function(a,b){let d=0;for(let e=1;e<b.length;++e)d+=function(a,b,d){let e=c(d,d.map((a,b)=>b)),f=b.flatMap(b=>a.outEdges(b).map(b=>({pos:e[b.w],weight:a.edge(b).weight})).sort((a,b)=>a.pos-b.pos)),g=1;for(;g<d.length;)g<<=1;let h=2*g-1;g-=1;let i=Array(h).fill(0),j=0;return f.forEach(a=>{let b=a.pos+g;i[b]+=a.weight;let c=0;for(;b>0;)b%2&&(c+=i[b+1]),b=b-1>>1,i[b]+=a.weight;j+=a.weight*c}),j}(a,b[e-1],b[e]);return d}}),v=e((a,b)=>{b.exports=function(a,b=[]){return b.map(b=>{let c=a.inEdges(b);if(!c.length)return{v:b};{let d=c.reduce((b,c)=>{let d=a.edge(c),e=a.node(c.v);return{sum:b.sum+d.weight*e.order,weight:b.weight+d.weight}},{sum:0,weight:0});return{v:b,barycenter:d.sum/d.weight,weight:d.weight}}})}}),w=e((a,b)=>{var c=i();b.exports=function(a,b){let d={};return a.forEach((a,b)=>{let c=d[a.v]={indegree:0,in:[],out:[],vs:[a.v],i:b};void 0!==a.barycenter&&(c.barycenter=a.barycenter,c.weight=a.weight)}),b.edges().forEach(a=>{let b=d[a.v],c=d[a.w];void 0!==b&&void 0!==c&&(c.indegree++,b.out.push(d[a.w]))}),function(a){let b=[];for(;a.length;){let c=a.pop();b.push(c),c.in.reverse().forEach(function(a){return b=>{b.merged||(void 0===b.barycenter||void 0===a.barycenter||b.barycenter>=a.barycenter)&&function(a,b){let c=0,d=0;a.weight&&(c+=a.barycenter*a.weight,d+=a.weight),b.weight&&(c+=b.barycenter*b.weight,d+=b.weight),a.vs=b.vs.concat(a.vs),a.barycenter=c/d,a.weight=d,a.i=Math.min(b.i,a.i),b.merged=!0}(a,b)}}(c)),c.out.forEach(function(b){return c=>{c.in.push(b),0==--c.indegree&&a.push(c)}}(c))}return b.filter(a=>!a.merged).map(a=>c.pick(a,["vs","i","barycenter","weight"]))}(Object.values(d).filter(a=>!a.indegree))}}),x=e((a,b)=>{var c=i();function d(a,b,c){let d;for(;b.length&&(d=b[b.length-1]).i<=c;)b.pop(),a.push(d.vs),c++;return c}b.exports=function(a,b){var e;let f=c.partition(a,a=>Object.hasOwn(a,"barycenter")),g=f.lhs,h=f.rhs.sort((a,b)=>b.i-a.i),i=[],j=0,k=0,l=0;g.sort((e=!!b,(a,b)=>a.barycenter<b.barycenter?-1:a.barycenter>b.barycenter?1:e?b.i-a.i:a.i-b.i)),l=d(i,h,l),g.forEach(a=>{l+=a.vs.length,i.push(a.vs),j+=a.barycenter*a.weight,k+=a.weight,l=d(i,h,l)});let m={vs:i.flat(!0)};return k&&(m.barycenter=j/k,m.weight=k),m}}),y=e((a,b)=>{var c=v(),d=w(),e=x();b.exports=function a(b,f,g,h){var i,j;let k=b.children(f),l=b.node(f),m=l?l.borderLeft:void 0,n=l?l.borderRight:void 0,o={};m&&(k=k.filter(a=>a!==m&&a!==n));let p=c(b,k);p.forEach(c=>{if(b.children(c.v).length){var d,e;let f=a(b,c.v,g,h);o[c.v]=f,Object.hasOwn(f,"barycenter")&&(d=c,e=f,void 0!==d.barycenter?(d.barycenter=(d.barycenter*d.weight+e.barycenter*e.weight)/(d.weight+e.weight),d.weight+=e.weight):(d.barycenter=e.barycenter,d.weight=e.weight))}});let q=d(p,g);i=q,j=o,i.forEach(a=>{a.vs=a.vs.flatMap(a=>j[a]?j[a].vs:a)});let r=e(q,h);if(m&&(r.vs=[m,r.vs,n].flat(!0),b.predecessors(m).length)){let a=b.node(b.predecessors(m)[0]),c=b.node(b.predecessors(n)[0]);Object.hasOwn(r,"barycenter")||(r.barycenter=0,r.weight=0),r.barycenter=(r.barycenter*r.weight+a.order+c.order)/(r.weight+2),r.weight+=2}return r}}),z=e((a,b)=>{var c=f().Graph,d=i();b.exports=function(a,b,e,f){f||(f=a.nodes());let g=function(a){for(var b;a.hasNode(b=d.uniqueId("_root")););return b}(a),h=new c({compound:!0}).setGraph({root:g}).setDefaultNodeLabel(b=>a.node(b));return f.forEach(c=>{let d=a.node(c),f=a.parent(c);(d.rank===b||d.minRank<=b&&b<=d.maxRank)&&(h.setNode(c),h.setParent(c,f||g),a[e](c).forEach(b=>{let d=b.v===c?b.w:b.v,e=h.edge(d,c),f=void 0!==e?e.weight:0;h.setEdge(d,c,{weight:a.edge(b).weight+f})}),Object.hasOwn(d,"minRank")&&h.setNode(c,{borderLeft:d.borderLeft[b],borderRight:d.borderRight[b]}))}),h}}),A=e((a,b)=>{b.exports=function(a,b,c){let d={},e;c.forEach(c=>{let f=a.parent(c),g,h;for(;f;){if((g=a.parent(f))?(h=d[g],d[g]=f):(h=e,e=f),h&&h!==f)return void b.setEdge(h,f);f=g}})}}),B=e((a,b)=>{var c=t(),d=u(),e=y(),g=z(),h=A(),j=f().Graph,k=i();function l(a,b,c){let d=new Map,e=(a,b)=>{d.has(a)||d.set(a,[]),d.get(a).push(b)};for(let b of a.nodes()){let c=a.node(b);if("number"==typeof c.rank&&e(c.rank,b),"number"==typeof c.minRank&&"number"==typeof c.maxRank)for(let a=c.minRank;a<=c.maxRank;a++)a!==c.rank&&e(a,b)}return b.map(function(b){return g(a,b,c,d.get(b)||[])})}function m(a,b){Object.values(b).forEach(b=>b.forEach((b,c)=>a.node(b).order=c))}b.exports=function a(b,f={}){if("function"==typeof f.customOrder)return void f.customOrder(b,a);let g=k.maxRank(b),i=l(b,k.range(1,g+1),"inEdges"),n=l(b,k.range(g-1,-1,-1),"outEdges"),o=c(b);if(m(b,o),f.disableOptimalOrderHeuristic)return;let p=1/0,q,r=f.constraints||[];for(let a=0,c=0;c<4;++a,++c){(function(a,b,c){let d=new j;a.forEach(function(a){c.forEach(a=>d.setEdge(a.left,a.right));let f=a.graph().root,g=e(a,f,d,b);g.vs.forEach((b,c)=>a.node(b).order=c),h(a,d,g.vs)})})(a%2?i:n,a%4>=2,r),o=k.buildLayerMatrix(b);let f=d(b,o);f<p?(c=0,q=Object.assign({},o),p=f):f===p&&(q=structuredClone(o))}m(b,q)}}),C=e((a,b)=>{var c=f().Graph,d=i();function e(a,b){let c={};return b.length&&b.reduce(function(b,d){let e=0,f=0,g=b.length,i=d[d.length-1];return d.forEach((b,j)=>{let k=function(a,b){if(a.node(b).dummy)return a.predecessors(b).find(b=>a.node(b).dummy)}(a,b),l=k?a.node(k).order:g;(k||b===i)&&(d.slice(f,j+1).forEach(b=>{a.predecessors(b).forEach(d=>{let f=a.node(d),g=f.order;(g<e||l<g)&&!(f.dummy&&a.node(b).dummy)&&h(c,d,b)})}),f=j+1,e=l)}),d}),c}function g(a,b){let c={};function e(b,e,f,g,i){let j;d.range(e,f).forEach(d=>{j=b[d],a.node(j).dummy&&a.predecessors(j).forEach(b=>{let d=a.node(b);d.dummy&&(d.order<g||d.order>i)&&h(c,b,j)})})}return b.length&&b.reduce(function(b,c){let d=-1,f,g=0;return c.forEach((h,i)=>{if("border"===a.node(h).dummy){let b=a.predecessors(h);b.length&&(f=a.node(b[0]).order,e(c,g,i,d,f),g=i,d=f)}e(c,g,c.length,f,b.length)}),c}),c}function h(a,b,c){if(b>c){let a=b;b=c,c=a}let d=a[b];d||(a[b]=d={}),d[c]=!0}function j(a,b,c){if(b>c){let a=b;b=c,c=a}return!!a[b]&&Object.hasOwn(a[b],c)}function k(a,b,c,d){let e={},f={},g={};return b.forEach(a=>{a.forEach((a,b)=>{e[a]=a,f[a]=a,g[a]=b})}),b.forEach(a=>{let b=-1;a.forEach(a=>{let h=d(a);if(h.length){let d=((h=h.sort((a,b)=>g[a]-g[b])).length-1)/2;for(let i=Math.floor(d),k=Math.ceil(d);i<=k;++i){let d=h[i];f[a]===a&&b<g[d]&&!j(c,a,d)&&(f[d]=a,f[a]=e[a]=e[d],b=g[d])}}})}),{root:e,align:f}}function l(a,b,d,e,f){var g,h,i,j,k,l,m;let n,o,p,q={},r=(g=a,h=b,i=d,j=f,n=new c,p=(k=(o=g.graph()).nodesep,l=o.edgesep,m=j,(a,b,c)=>{let d=a.node(b),e=a.node(c),f,g;if(f=0+d.width/2,Object.hasOwn(d,"labelpos"))switch(d.labelpos.toLowerCase()){case"l":g=-d.width/2;break;case"r":g=d.width/2}if(g&&(f+=m?g:-g),g=0,f+=(d.dummy?l:k)/2,f+=(e.dummy?l:k)/2,f+=e.width/2,Object.hasOwn(e,"labelpos"))switch(e.labelpos.toLowerCase()){case"l":g=e.width/2;break;case"r":g=-e.width/2}return g&&(f+=m?g:-g),g=0,f}),h.forEach(a=>{let b;a.forEach(a=>{let c=i[a];if(n.setNode(c),b){var d=i[b],e=n.edge(d,c);n.setEdge(d,c,Math.max(p(g,a,b),e||0))}b=a})}),n),s=f?"borderLeft":"borderRight";function t(a,b){let c=r.nodes().slice(),d={},e=c.pop();for(;e;){if(d[e])a(e);else for(let a of(d[e]=!0,c.push(e),b(e)))c.push(a);e=c.pop()}}return t(function(a){q[a]=r.inEdges(a).reduce((a,b)=>Math.max(a,q[b.v]+r.edge(b)),0)},r.predecessors.bind(r)),t(function(b){let c=r.outEdges(b).reduce((a,b)=>Math.min(a,q[b.w]-r.edge(b)),1/0),d=a.node(b);c!==1/0&&d.borderType!==s&&(q[b]=Math.max(q[b],c))},r.successors.bind(r)),Object.keys(e).forEach(a=>q[a]=q[d[a]]),q}function m(a,b){return Object.values(b).reduce((b,c)=>{let d=-1/0,e=1/0;Object.entries(c).forEach(([b,c])=>{var f,g;let h=(f=a,g=b,f.node(g).width/2);d=Math.max(c+h,d),e=Math.min(c-h,e)});let f=d-e;return f<b[0]&&(b=[f,c]),b},[1/0,null])[1]}function n(a,b){let c=Object.values(b),e=d.applyWithChunking(Math.min,c),f=d.applyWithChunking(Math.max,c);["u","d"].forEach(c=>{["l","r"].forEach(g=>{let h=c+g,i=a[h];if(i===b)return;let j=Object.values(i),k=e-d.applyWithChunking(Math.min,j);"l"!==g&&(k=f-d.applyWithChunking(Math.max,j)),k&&(a[h]=d.mapValues(i,a=>a+k))})})}function o(a,b){return d.mapValues(a.ul,(c,d)=>{if(b)return a[b.toLowerCase()][d];{let b=Object.values(a).map(a=>a[d]).sort((a,b)=>a-b);return(b[1]+b[2])/2}})}b.exports={positionX:function(a){let b=d.buildLayerMatrix(a),c=Object.assign(e(a,b),g(a,b)),f={},h;["u","d"].forEach(e=>{h="u"===e?b:Object.values(b).reverse(),["l","r"].forEach(b=>{"r"===b&&(h=h.map(a=>Object.values(a).reverse()));let g=("u"===e?a.predecessors:a.successors).bind(a),i=k(a,h,c,g),j=l(a,h,i.root,i.align,"r"===b);"r"===b&&(j=d.mapValues(j,a=>-a)),f[e+b]=j})});let i=m(a,f);return n(f,i),o(f,a.graph().align)},findType1Conflicts:e,findType2Conflicts:g,addConflict:h,hasConflict:j,verticalAlignment:k,horizontalCompaction:l,alignCoordinates:n,findSmallestWidthAlignment:m,balance:o}}),D=e((a,b)=>{var c=i(),d=C().positionX;b.exports=function(a){var b;let e,f,g,h;b=a=c.asNonCompoundGraph(a),e=c.buildLayerMatrix(b),f=b.graph().ranksep,g=b.graph().rankalign,h=0,e.forEach(a=>{let c=a.reduce((a,c)=>{let d=b.node(c).height;return a>d?a:d},0);a.forEach(a=>{let d=b.node(a);"top"===g?d.y=h+d.height/2:"bottom"===g?d.y=h+c-d.height/2:d.y=h+c/2}),h+=c+f}),Object.entries(d(a)).forEach(([b,c])=>a.node(b).x=c)}}),E=e((a,b)=>{var c=j(),d=k(),e=o(),g=i().normalizeRanks,h=p(),l=i().removeEmptyRanks,m=q(),n=r(),t=s(),u=B(),v=D(),w=i(),x=f().Graph;b.exports=function(a,b={}){let f=b.debugTiming?w.time:w.notime;return f("layout",()=>{let i=f(" buildLayoutGraph",()=>{var b;let c,d;return b=a,c=new x({multigraph:!0,compound:!0}),d=J(b.graph()),c.setGraph(Object.assign({},z,I(d,y),w.pick(d,A))),b.nodes().forEach(a=>{let d=I(J(b.node(a)),C);Object.keys(E).forEach(a=>{void 0===d[a]&&(d[a]=E[a])}),c.setNode(a,d),c.setParent(a,b.parent(a))}),b.edges().forEach(a=>{let d=J(b.edge(a));c.setEdge(a,Object.assign({},G,I(d,F),w.pick(d,H)))}),c});return f(" runLayout",()=>{var a,j,k;return a=i,j=f,k=b,void(j(" makeSpaceForEdgeLabels",()=>{var b;let c;return c=(b=a).graph(),void(c.ranksep/=2,b.edges().forEach(a=>{let d=b.edge(a);d.minlen*=2,"c"!==d.labelpos.toLowerCase()&&("TB"===c.rankdir||"BT"===c.rankdir?d.width+=d.labeloffset:d.height+=d.labeloffset)}))}),j(" removeSelfEdges",()=>{var b;(b=a).edges().forEach(a=>{if(a.v===a.w){var c=b.node(a.v);c.selfEdges||(c.selfEdges=[]),c.selfEdges.push({e:a,label:b.edge(a)}),b.removeEdge(a)}})}),j(" acyclic",()=>c.run(a)),j(" nestingGraph.run",()=>m.run(a)),j(" rank",()=>e(w.asNonCompoundGraph(a))),j(" injectEdgeLabelProxies",()=>{var b;(b=a).edges().forEach(a=>{let c=b.edge(a);if(c.width&&c.height){let c=b.node(a.v),d={rank:(b.node(a.w).rank-c.rank)/2+c.rank,e:a};w.addDummyNode(b,"edge-proxy",d,"_ep")}})}),j(" removeEmptyRanks",()=>l(a)),j(" nestingGraph.cleanup",()=>m.cleanup(a)),j(" normalizeRanks",()=>g(a)),j(" assignRankMinMax",()=>{var b;let c;return c=0,void((b=a).nodes().forEach(a=>{let d=b.node(a);d.borderTop&&(d.minRank=b.node(d.borderTop).rank,d.maxRank=b.node(d.borderBottom).rank,c=Math.max(c,d.maxRank))}),b.graph().maxRank=c)}),j(" removeEdgeLabelProxies",()=>{var b;(b=a).nodes().forEach(a=>{let c=b.node(a);"edge-proxy"===c.dummy&&(b.edge(c.e).labelRank=c.rank,b.removeNode(a))})}),j(" normalize.run",()=>d.run(a)),j(" parentDummyChains",()=>h(a)),j(" addBorderSegments",()=>n(a)),j(" order",()=>u(a,k)),j(" insertSelfEdges",()=>{var b;return b=a,void w.buildLayerMatrix(b).forEach(a=>{var c=0;a.forEach((a,d)=>{var e=b.node(a);e.order=d+c,(e.selfEdges||[]).forEach(a=>{w.addDummyNode(b,"selfedge",{width:a.label.width,height:a.label.height,rank:e.rank,order:d+ ++c,e:a.e,label:a.label},"_se")}),delete e.selfEdges})})}),j(" adjustCoordinateSystem",()=>t.adjust(a)),j(" position",()=>v(a)),j(" positionSelfEdges",()=>{var b;(b=a).nodes().forEach(a=>{var c=b.node(a);if("selfedge"===c.dummy){var d=b.node(c.e.v),e=d.x+d.width/2,f=d.y,g=c.x-e,h=d.height/2;b.setEdge(c.e,c.label),b.removeNode(a),c.label.points=[{x:e+2*g/3,y:f-h},{x:e+5*g/6,y:f-h},{x:e+g,y:f},{x:e+5*g/6,y:f+h},{x:e+2*g/3,y:f+h}],c.label.x=c.x,c.label.y=c.y}})}),j(" removeBorderNodes",()=>{var b;(b=a).nodes().forEach(a=>{if(b.children(a).length){let c=b.node(a),d=b.node(c.borderTop),e=b.node(c.borderBottom),f=b.node(c.borderLeft[c.borderLeft.length-1]),g=b.node(c.borderRight[c.borderRight.length-1]);c.width=Math.abs(g.x-f.x),c.height=Math.abs(e.y-d.y),c.x=f.x+c.width/2,c.y=d.y+c.height/2}}),b.nodes().forEach(a=>{"border"===b.node(a).dummy&&b.removeNode(a)})}),j(" normalize.undo",()=>d.undo(a)),j(" fixupEdgeLabelCoords",()=>{var b;(b=a).edges().forEach(a=>{let c=b.edge(a);if(Object.hasOwn(c,"x"))switch(("l"===c.labelpos||"r"===c.labelpos)&&(c.width-=c.labeloffset),c.labelpos){case"l":c.x-=c.width/2+c.labeloffset;break;case"r":c.x+=c.width/2+c.labeloffset}})}),j(" undoCoordinateSystem",()=>t.undo(a)),j(" translateGraph",()=>(function(a){let b=1/0,c=0,d=1/0,e=0,f=a.graph(),g=f.marginx||0,h=f.marginy||0;function i(a){let f=a.x,g=a.y,h=a.width,i=a.height;b=Math.min(b,f-h/2),c=Math.max(c,f+h/2),d=Math.min(d,g-i/2),e=Math.max(e,g+i/2)}a.nodes().forEach(b=>i(a.node(b))),a.edges().forEach(b=>{let c=a.edge(b);Object.hasOwn(c,"x")&&i(c)}),b-=g,d-=h,a.nodes().forEach(c=>{let e=a.node(c);e.x-=b,e.y-=d}),a.edges().forEach(c=>{let e=a.edge(c);e.points.forEach(a=>{a.x-=b,a.y-=d}),Object.hasOwn(e,"x")&&(e.x-=b),Object.hasOwn(e,"y")&&(e.y-=d)}),f.width=c-b+g,f.height=e-d+h})(a)),j(" assignNodeIntersects",()=>{var b;(b=a).edges().forEach(a=>{let c=b.edge(a),d=b.node(a.v),e=b.node(a.w),f,g;c.points?(f=c.points[0],g=c.points[c.points.length-1]):(c.points=[],f=e,g=d),c.points.unshift(w.intersectRect(d,f)),c.points.push(w.intersectRect(e,g))})}),j(" reversePoints",()=>{var b;(b=a).edges().forEach(a=>{let c=b.edge(a);c.reversed&&c.points.reverse()})}),j(" acyclic.undo",()=>c.undo(a)))}),f(" updateInputGraph",()=>{var b,c;return b=a,c=i,void(b.nodes().forEach(a=>{let d=b.node(a),e=c.node(a);d&&(d.x=e.x,d.y=e.y,d.order=e.order,d.rank=e.rank,c.children(a).length&&(d.width=e.width,d.height=e.height))}),b.edges().forEach(a=>{let d=b.edge(a),e=c.edge(a);d.points=e.points,Object.hasOwn(e,"x")&&(d.x=e.x,d.y=e.y)}),b.graph().width=c.graph().width,b.graph().height=c.graph().height)}),i})};var y=["nodesep","edgesep","ranksep","marginx","marginy"],z={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb",rankalign:"center"},A=["acyclicer","ranker","rankdir","align","rankalign"],C=["width","height","rank"],E={width:0,height:0},F=["minlen","weight","width","height","labeloffset"],G={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},H=["labelpos"];function I(a,b){return w.mapValues(w.pick(a,b),Number)}function J(a){var b={};return a&&Object.entries(a).forEach(([a,c])=>{"string"==typeof a&&(a=a.toLowerCase()),b[a]=c}),b}}),F=e((a,b)=>{var c=i(),d=f().Graph;b.exports={debugOrdering:function(a){let b=c.buildLayerMatrix(a),e=new d({compound:!0,multigraph:!0}).setGraph({});return a.nodes().forEach(b=>{e.setNode(b,{label:b}),e.setParent(b,"layer"+a.node(b).rank)}),a.edges().forEach(a=>e.setEdge(a.v,a.w,{},a.name)),b.forEach((a,b)=>{e.setNode("layer"+b,{rank:"same"}),a.reduce((a,b)=>(e.setEdge(a,b,{style:"invis"}),b))}),e}}}),G=e((a,b)=>{b.exports="2.0.4"});let H=e((a,b)=>{b.exports={graphlib:f(),layout:E(),debug:F(),util:{time:i().time,notime:i().notime},version:G()}})(),I={direction:"LR",ranksep:200,nodesep:48};function J(a="ltr"){return{...I,direction:"rtl"===a?"RL":"LR"}}let K={featureNode:{width:388,height:140},repositoryNode:{width:400,height:140},applicationNode:{width:416,height:300}};function L(a,b){let c=a.data;return c&&"number"==typeof c.width&&"number"==typeof c.height?{width:c.width,height:c.height}:K[a.type??""]??b}function M(a,b,c={}){let{direction:d="TB",nodeSize:e={width:172,height:36},ranksep:f=80,nodesep:g=30}=c;if(0===a.length)return{nodes:[],edges:[]};let h=new H.graphlib.Graph({multigraph:!0});h.setDefaultEdgeLabel(()=>({})),h.setGraph({rankdir:d,ranksep:f,nodesep:g});let i=new Set;for(let a of b)i.add(a.source),i.add(a.target);let j=a.filter(a=>i.has(a.id)),k=a.filter(a=>!i.has(a.id));for(let a of j){let b=L(a,e);h.setNode(a.id,{width:b.width,height:b.height})}for(let a of b)h.hasNode(a.source)&&h.hasNode(a.target)&&h.setEdge(a.source,a.target,{},a.id);H.layout(h);let{targetPosition:l,sourcePosition:m}=function(a){switch(a){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"}}}(d),n="LR"===d||"RL"===d,o=new Map;for(let a of j){let b=h.node(a.id),c=L(a,e);o.set(a.id,{cx:b.x,cy:b.y,w:c.width,h:c.height})}let p=0;for(let a of o.values()){p=n?a.cx:a.cy;break}for(let a of k){let b=L(a,e);o.set(a.id,{cx:n?p:0,cy:n?0:p,w:b.width,h:b.height})}let q=new Map;for(let a of b)o.has(a.source)&&o.has(a.target)&&(q.has(a.source)||q.set(a.source,[]),q.get(a.source).push(a.target));let r=new Map;for(let b=0;b<a.length;b++)r.set(a[b].id,b);for(let[,a]of q)a.sort((a,b)=>(r.get(a)??0)-(r.get(b)??0));let s=new Set;for(let a of q.values())for(let b of a)s.add(b);let t=[...[...i].filter(a=>o.has(a)&&!s.has(a)),...k.map(a=>a.id)];t.sort((a,b)=>(r.get(a)??0)-(r.get(b)??0));let u=new Map;for(let a of t)!function a(b){if(u.has(b))return u.get(b);let c=o.get(b),d=n?c.h:c.w,e=q.get(b);if(!e||0===e.length)return u.set(b,d),d;let f=0;for(let b of e)f+=a(b);let h=Math.max(d,f+=(e.length-1)*g);return u.set(b,h),h}(a);let v=0;for(let a of t){let b=u.get(a)??0;!function a(b,c){let d=o.get(b);n?d.cy=c:d.cx=c;let e=q.get(b);if(!e||0===e.length)return;let f=0;for(let a of e)f+=u.get(a)??0;let h=c-(f+=(e.length-1)*g)/2;for(let b of e){let c=u.get(b)??0;a(b,h+c/2),h+=c+g}}(a,v+b/2),v+=b+g}let w=[];for(let b of a){let a=o.get(b.id);a&&w.push({...b,targetPosition:l,sourcePosition:m,position:{x:a.cx-a.w/2,y:a.cy-a.h/2}})}return{nodes:w,edges:[...b]}}var N=a.i(25674);let O=(0,N.createServerReference)("406260b7003b9bf0cb14ef656aafd980487280c22c",N.callServer,void 0,N.findSourceMapURL,"archiveFeature"),P=(0,N.createServerReference)("7812c1aa0763b4d79f2e787daf598094ad499c8a1a",N.callServer,void 0,N.findSourceMapURL,"deleteFeature");var Q=a.i(75502),R=a.i(22350),S=a.i(10667);let T=(0,N.createServerReference)("40023dc327570cea6ff2a1177e996854851a51c089",N.callServer,void 0,N.findSourceMapURL,"unarchiveFeature");var U=a.i(3650);let V=(0,N.createServerReference)("6036bd2e834ebd0c4acfa043c83e1a1f595d949be9",N.callServer,void 0,N.findSourceMapURL,"deleteRepository"),W=(0,N.createServerReference)("40ee07562b07beaa415ee4ea443c25c60934686a33",N.callServer,void 0,N.findSourceMapURL,"deleteApplication"),X=(0,N.createServerReference)("40af4871c7609c265aa4f2438b045c7abe38fe6e69",N.callServer,void 0,N.findSourceMapURL,"getFeatureMetadata");var Y=a.i(84871),Z=a.i(66691),$=a.i(19884),_=a.i(87139),aa=a.i(74146);a.i(90370);var ab=a.i(24640);function ac(a,b){let c=new Map;for(let a of b)"dependencyEdge"===a.type&&c.set(a.target,a.source);let d=new Map,e=new Map,f=new Map;for(let b of a)"featureNode"===b.type?d.set(b.id,{nodeId:b.id,data:b.data,parentNodeId:c.get(b.id)}):"repositoryNode"===b.type?e.set(b.id,{nodeId:b.id,data:b.data}):"applicationNode"===b.type&&f.set(b.id,{nodeId:b.id,data:b.data});return{featureMap:d,repoMap:e,applicationMap:f}}function ad(a,b){return(void 0===b.state||b.state===a.state)&&(void 0===b.lifecycle||b.lifecycle===a.lifecycle)&&(void 0===b.name||b.name===a.name)&&(void 0===b.description||b.description===a.description)}function ae(a,b){if(a.size!==b.size)return!1;for(let[c,d]of a){let a=b.get(c);if(!a||d.parentNodeId!==a.parentNodeId||d.data!==a.data&&JSON.stringify(d.data)!==JSON.stringify(a.data))return!1}return!0}let af=(0,_.createLogger)("[Polling]"),ag=0,ah=0;function ai(a,e){let f=(0,c.useRouter)(),g=(0,$.useSoundAction)("delete"),h=(0,$.useSoundAction)("create"),[i,j]=(0,b.useState)(!1),{nodes:k,edges:l,reconcile:m,updateFeature:n,addPendingFeature:o,removeFeature:p,restoreFeature:q,addRepository:r,removeRepository:s,replaceRepository:t,getFeatureRepositoryPath:u,getRepositoryData:v,getRepoMapSize:w,addApplication:x,removeApplication:y,setCallbacks:z,beginMutation:A,endMutation:B,isMutating:C}=function(a,c,d=!1){let{i18n:e}=(0,ab.useTranslation)(),f=(0,b.useMemo)(()=>J(e.dir()),[e]),g=(0,b.useMemo)(()=>ac(a,c),[]),[h,i]=(0,b.useState)(g.featureMap),[j,k]=(0,b.useState)(g.repoMap),[l,m]=(0,b.useState)(g.applicationMap),[n,o]=(0,b.useState)(new Map),p=(0,b.useRef)(new Map),q=(0,b.useRef)(new Set),r=(0,b.useRef)(0),s=(0,b.useRef)(new Set),t=(0,b.useRef)(new Set),u=(0,b.useRef)(new Set),v=(0,b.useRef)({}),w=(0,b.useMemo)(()=>({onNodeAction:a=>v.current.onNodeAction?.(a),onNodeSettings:a=>v.current.onNodeSettings?.(a),onFeatureDelete:(a,b,c,d)=>v.current.onFeatureDelete?.(a,b,c,d),onRepositoryAdd:a=>v.current.onRepositoryAdd?.(a),onRepositoryClick:a=>v.current.onRepositoryClick?.(a),onRepositoryDelete:a=>v.current.onRepositoryDelete?.(a),onRetryFeature:a=>v.current.onRetryFeature?.(a),onStartFeature:a=>v.current.onStartFeature?.(a),onArchiveFeature:a=>v.current.onArchiveFeature?.(a),onUnarchiveFeature:a=>v.current.onUnarchiveFeature?.(a),onApplicationClick:a=>v.current.onApplicationClick?.(a),onApplicationDelete:a=>v.current.onApplicationDelete?.(a)}),[]),x=(0,b.useRef)(h);x.current=h;let y=(0,b.useRef)(j);y.current=j;let z=(0,b.useMemo)(()=>{if(d)return h;let a=new Map;for(let[b,c]of h)"archived"!==c.data.state&&a.set(b,c);return a.size===h.size?h:a},[h,d]),A=(0,b.useMemo)(()=>(function(a,b,c,d,e){let f=[],g=[],h=a=>a.replace(/\\/g,"/"),i=new Map;for(let[a,c]of b)c.data.repositoryPath&&i.set(h(c.data.repositoryPath),a);let j=new Map;for(let[a,c]of[...b.entries()].sort((a,b)=>{let c=a[1].data.createdAt,d=b[1].data.createdAt;return("number"!=typeof c||Number.isNaN(c)?1/0:c)-("number"!=typeof d||Number.isNaN(d)?1/0:d)})){let b={...c.data,...d?.onRepositoryAdd&&{onAdd:()=>d.onRepositoryAdd(a)},...d?.onRepositoryClick&&{onClick:()=>d.onRepositoryClick(a)},...d?.onRepositoryDelete&&{onDelete:d.onRepositoryDelete}};f.push({id:a,type:"repositoryNode",position:{x:0,y:0},data:b})}for(let[b,e,k]of[...[...a.entries()].map(([a,b])=>[a,b,!1]),...[...c.entries()].filter(([b])=>!a.has(b)).map(([a,b])=>[a,b,!0])]){let l="creating"===e.data.state||k,m={...e.data,...!l&&d?.onNodeAction&&{onAction:()=>d.onNodeAction(b)},...!l&&d?.onNodeSettings&&{onSettings:()=>d.onNodeSettings(b)},...!l&&d?.onFeatureDelete&&{onDelete:d.onFeatureDelete},...!l&&"error"===e.data.state&&d?.onRetryFeature&&{onRetry:d.onRetryFeature},...!l&&"pending"===e.data.state&&d?.onStartFeature&&{onStart:d.onStartFeature},...!l&&("running"===e.data.state||"action-required"===e.data.state)&&d?.onStopFeature&&{onStop:d.onStopFeature},...!l&&"archived"!==e.data.state&&"deleting"!==e.data.state&&d?.onArchiveFeature&&{onArchive:d.onArchiveFeature},...!l&&"archived"===e.data.state&&d?.onUnarchiveFeature&&{onUnarchive:d.onUnarchiveFeature}};if(f.push({id:b,type:"featureNode",position:{x:0,y:0},data:m}),e.parentNodeId&&(a.has(e.parentNodeId)||c.has(e.parentNodeId)))g.push({id:`dep-${e.parentNodeId}-${b}`,source:e.parentNodeId,target:b,type:"dependencyEdge"});else{let a=h(e.data.repositoryPath),c=i.get(a)??function(a){if(j.has(a))return j.get(a);let b=`virtual-repo-${a}`,c=a.split("/").filter(Boolean).at(-1)??a;return f.push({id:b,type:"repositoryNode",position:{x:0,y:0},data:{name:c,repositoryPath:a}}),j.set(a,b),b}(a);g.push({id:`edge-${c}-${b}`,source:c,target:b,style:{strokeDasharray:"5 5"}})}}if(e)for(let[a,b]of e){let c={...b.data,...d?.onApplicationClick&&{onClick:()=>d.onApplicationClick(b.data.id)},...d?.onApplicationDelete&&{onDelete:d.onApplicationDelete}};if(f.push({id:a,type:"applicationNode",position:{x:0,y:0},data:c}),b.data.repositoryPath){let c=b.data.repositoryPath.replace(/\\/g,"/"),d=i.get(c);d&&g.push({id:`edge-${a}-${d}`,source:a,target:d,style:{strokeDasharray:"5 5"}})}}let k=new Set;for(let a of g)"dependencyEdge"===a.type&&k.add(a.source);let l=g.length>0;for(let a of f){let b=a.data;b.showHandles=l,"featureNode"===a.type&&(b.hasChildren=k.has(a.id))}return{nodes:f,edges:g}})(z,j,n,w,l),[z,j,n,w,l]),B=(0,b.useRef)({key:"",positions:new Map}),{nodes:C,edges:D}=(0,b.useMemo)(()=>{let a=A.nodes.map(a=>a.id).sort().join(","),b=A.edges.map(a=>`${a.source}-${a.target}`).sort().join(","),c=`${a}|${b}|${f.direction}`;if(c!==B.current.key){let a=M(A.nodes,A.edges,f),b=new Map;for(let c of a.nodes)b.set(c.id,{position:c.position,targetPosition:c.targetPosition,sourcePosition:c.sourcePosition});let d=B.current.positions;if(d.size>0){let c=0,e=0;for(let[a,f]of b){let b=d.get(a);if(b){c=b.position.x-f.position.x,e=b.position.y-f.position.y;break}}if(0!==c||0!==e){for(let a of b.values())a.position={x:a.position.x+c,y:a.position.y+e};for(let b of a.nodes)b.position={x:b.position.x+c,y:b.position.y+e}}}return B.current={key:c,positions:b},a}let{positions:d}=B.current;return{nodes:A.nodes.map(a=>{let b=d.get(a.id);return b?{...a,...b}:a}),edges:A.edges}},[A,f]),E=(0,b.useCallback)((a,b)=>{if(r.current>0)return;let{featureMap:c,repoMap:d}=ac(a,b),e=new Set([...c.values()].map(a=>`${a.data.name}\0${a.data.repositoryPath}`));i(a=>{let b=[...a.entries()].filter(([,a])=>"creating"===a.data.state),d=new Map(c);for(let[a,c]of b){let b=`${c.data.name}\0${c.data.repositoryPath}`;e.has(b)||d.set(a,c)}let f=new Set;for(let[b,c]of a)"deleting"===c.data.state&&(d.has(b)?d.set(b,{...d.get(b),data:{...d.get(b).data,state:"deleting"}}):t.current.has(b)||(d.set(b,c),f.add(b)));for(let[a,b]of(t.current=f,p.current)){let c=d.get(a);c&&(d.set(a,{...c,data:{...c.data,...b}}),p.current.delete(a))}return ae(a,d)?a:d}),o(a=>{if(0===a.size)return a;let b=!1,c=new Map(a);for(let[d,f]of a){let a=`${f.data.name}\0${f.data.repositoryPath}`;e.has(a)&&(c.delete(d),b=!0)}return b?c:a}),k(a=>{let b=new Map(d);for(let a of u.current)b.has(a)?b.delete(a):u.current.delete(a);let c=new Set([...d.values()].map(a=>a.data.repositoryPath));for(let[d,e]of a){if(b.has(d)||c.has(e.data.repositoryPath)){q.current.delete(d);continue}(d.startsWith("repo-temp-")||q.current.has(d))&&b.set(d,e)}return ae(a,b)?a:b});let{applicationMap:f}=ac(a,b);m(a=>ae(a,f)?a:f)},[]),F=(0,b.useCallback)((a,b)=>{i(c=>{let d=c.get(a);if(!d)return p.current.set(a,{...p.current.get(a),...b}),c;if(p.current.delete(a),ad(d.data,b))return c;let e=new Map(c);return e.set(a,{...d,data:{...d.data,...b}}),e}),o(c=>{let d=c.get(a);if(!d||ad(d.data,b))return c;let e=new Map(c);return e.set(a,{...d,data:{...d.data,...b}}),e})},[]),G=(0,b.useCallback)((a,b,c)=>{o(d=>{let e=new Map(d);return e.set(a,{nodeId:a,data:b,parentNodeId:c}),e})},[]),H=(0,b.useCallback)(a=>{o(b=>{if(!b.has(a))return b;let c=new Map(b);return c.delete(a),c})},[]),I=(0,b.useCallback)(a=>{i(b=>{if(!b.has(a))return b;let c=new Map(b);return c.delete(a),c})},[]),K=(0,b.useCallback)((a,b)=>{i(c=>{let d=new Map(c);return d.set(a,b),d})},[]),L=(0,b.useCallback)((a,b)=>{q.current.add(a),u.current.delete(a),k(c=>{let d=new Map(c);return d.set(a,{nodeId:a,data:b}),d})},[]),N=(0,b.useCallback)(a=>{q.current.delete(a),u.current.add(a),k(b=>{if(!b.has(a))return b;let c=new Map(b);return c.delete(a),c})},[]),O=(0,b.useCallback)((a,b,c)=>{q.current.delete(a),q.current.add(b),k(d=>{if(!d.has(a))return d;let e=new Map(d);return e.delete(a),e.set(b,{nodeId:b,data:c}),e})},[]),P=(0,b.useCallback)((a,b)=>{m(c=>{let d=new Map(c);return d.set(a,{nodeId:a,data:b}),d})},[]),Q=(0,b.useCallback)(a=>{m(b=>{if(!b.has(a))return b;let c=new Map(b);return c.delete(a),c})},[]),R=(0,b.useCallback)(a=>x.current.get(a)?.data.repositoryPath,[]),S=(0,b.useCallback)(a=>y.current.get(a)?.data,[]),T=(0,b.useCallback)(()=>y.current.size,[]),U=(0,b.useCallback)(a=>{v.current=a},[]),V=(0,b.useCallback)(()=>{r.current++},[]),W=(0,b.useCallback)((a=3e3)=>{let b=setTimeout(()=>{r.current=Math.max(0,r.current-1),s.current.delete(b)},a);s.current.add(b)},[]),X=(0,b.useCallback)(()=>r.current>0,[]);return(0,b.useEffect)(()=>{let a=s.current;return()=>{for(let b of a)clearTimeout(b);a.clear()}},[]),{nodes:C,edges:D,reconcile:E,updateFeature:F,addPendingFeature:G,removePendingFeature:H,removeFeature:I,restoreFeature:K,addRepository:L,removeRepository:N,replaceRepository:O,getFeatureRepositoryPath:R,getRepositoryData:S,getRepoMapSize:T,addApplication:P,removeApplication:Q,setCallbacks:U,beginMutation:V,endMutation:W,isMutating:X}}(a,e,i),D=(0,b.useRef)(k),E=(0,b.useRef)(l);(0,b.useEffect)(()=>{D.current=k,E.current=l},[k,l]);let F=(0,b.useMemo)(()=>a.map(a=>a.id).sort().join(","),[a]),G=(0,b.useMemo)(()=>a.filter(a=>"featureNode"===a.type).map(a=>{let b=a.data;return`${a.id}:${b.state}:${b.lifecycle}`}).sort().join(","),[a]),H=(0,b.useRef)("");(0,b.useEffect)(()=>{let b=`${F}|${G}`;b!==H.current&&(H.current=b,m(a,e))},[F,G,a,e,m]);let I=(0,b.useRef)(new Map),{events:K}=(0,Y.useAgentEventsContext)(),{store:L}=(0,Z.useDeploymentStatusContext)();(0,b.useEffect)(()=>{let b=I.current;for(let c of a){if("featureNode"!==c.type)continue;let a=c.data,e=b.get(c.id);void 0!==e&&e!==a.state&&(K.some(b=>b.featureId===a.featureId&&(0,aa.mapEventTypeToState)(b.eventType)===a.state)||("done"===a.state?d.toast.success(a.name,{description:"Feature completed!"}):"action-required"===a.state?d.toast.warning(a.name,{description:"Waiting for your approval",action:{label:"Review",onClick:()=>f.push(`/feature/${a.featureId}`)}}):"error"===a.state&&d.toast.error(a.name,{description:a.errorMessage??"Agent failed"}))),b.set(c.id,a.state)}},[G,a,K,f]);let N=(0,b.useRef)(0);(0,b.useEffect)(()=>{if(N.current>K.length&&(N.current=0),K.length<=N.current)return;let a=K.slice(N.current);for(let{featureId:b,state:c,lifecycle:d}of(N.current=K.length,(0,aa.resolveSseEventUpdates)(a)))if(void 0!==c||void 0!==d){let a=`feat-${b}`,e=D.current.find(b=>b.id===a),f=e?e.data.state:void 0;if("deleting"===f||"error"===c&&C()&&"running"===f)continue;n(a,{...void 0!==c&&{state:c},...void 0!==d&&{lifecycle:d}})}},[K,n,C]),(0,b.useEffect)(()=>{let a=a=>{let{featureId:b}=a.detail;A(),n(`feat-${b}`,{state:"running"}),B()};return window.addEventListener("shep:feature-approved",a),()=>window.removeEventListener("shep:feature-approved",a)},[n,A,B]);let _=(0,b.useRef)(new Set),ai=(0,b.useRef)(0);(0,b.useEffect)(()=>{if(ai.current>K.length&&(ai.current=0),K.length<=ai.current)return;let a=K.slice(ai.current);for(let b of(ai.current=K.length,a)){if("Feature metadata updated"!==b.message||_.current.has(b.featureId))continue;_.current.add(b.featureId);let a=`feat-${b.featureId}`;X(b.featureId).then(b=>{b&&n(a,{name:b.name,description:b.description})}).catch(()=>{})}},[K,n]),(0,b.useEffect)(()=>{af.debug("polling enabled (15000ms interval)");let a=setInterval(async()=>{if(!document.hidden&&!C())try{let a=await fetch("/api/graph-data");if(!a.ok)throw Error(`status ${a.status}`);let{nodes:b,edges:c,deployments:d}=await a.json();m(b,c),Array.isArray(d)&&L.hydrate(d)}catch{af.warn("poll fetch failed — will retry next interval")}},15e3);return()=>{af.debug("polling disabled"),clearInterval(a)}},[m,C,L]);let aj=(0,b.useCallback)(a=>{},[]),ak=(0,b.useCallback)(a=>{},[]),al=(0,b.useCallback)((a,b,c)=>{let d=b?.featureId?`feat-${b.featureId}`:`feature-${Date.now()}-${ag++}`,e={name:b?.name??"New Feature",description:b?.description??"Describe what this feature does",featureId:b?.featureId??`#${d.slice(-4)}`,lifecycle:"requirements",state:b?.state??"running",progress:0,repositoryPath:b?.repositoryPath??"",branch:b?.branch??""};return o(d,e,"dependencyEdge"===c&&a?a:void 0),d},[o]),am=(0,b.useCallback)(a=>{let b=`feat-${a}`;A(),n(b,{state:"running"}),(0,Q.resumeFeature)(a).then(a=>{a.error?(n(b,{state:"error"}),d.toast.error(a.error)):d.toast.success("Feature resumed")}).catch(()=>{n(b,{state:"error"}),d.toast.error("Failed to resume feature")}).finally(()=>B())},[n,A,B]),an=(0,b.useCallback)(a=>{let b=`feat-${a}`;A(),n(b,{state:"running"}),(0,R.startFeature)(a).then(a=>{a.error?(n(b,{state:"pending"}),d.toast.error(a.error)):d.toast.success("Feature started")}).catch(()=>{n(b,{state:"pending"}),d.toast.error("Failed to start feature")}).finally(()=>B())},[n,A,B]),ao=(0,b.useCallback)(a=>{A(),(0,S.stopFeature)(a).then(a=>{a.error?d.toast.error(a.error):d.toast.success("Agent stopped")}).catch(()=>{d.toast.error("Failed to stop agent")}).finally(()=>B())},[A,B]),ap=(0,b.useCallback)(a=>{let b=`feat-${a}`;A(),n(b,{state:"archived"}),O(a).then(a=>{a.error?(n(b,{state:"done"}),d.toast.error(a.error)):d.toast.success("Feature archived")}).catch(()=>{n(b,{state:"done"}),d.toast.error("Failed to archive feature")}).finally(()=>B())},[n,A,B]),aq=(0,b.useCallback)(a=>{let b=`feat-${a}`;A(),n(b,{state:"done"}),T(a).then(a=>{a.error?(n(b,{state:"archived"}),d.toast.error(a.error)):d.toast.success("Feature unarchived")}).catch(()=>{n(b,{state:"archived"}),d.toast.error("Failed to unarchive feature")}).finally(()=>B())},[n,A,B]),ar=(0,b.useCallback)((a,b,c,e)=>{let h=`feat-${a}`,i=[];if(!0===c){let a=[h];for(;a.length>0;){let b=a.shift();for(let c of E.current)"dependencyEdge"===c.type&&c.source===b&&(i.push(c.target),a.push(c.target))}}let j=new Map;for(let a of[h,...i]){let b=D.current.find(b=>b.id===a);b&&j.set(a,b.data.state)}for(let a of(A(),n(h,{state:"deleting"}),i))n(a,{state:"deleting"});g.play(),f.push("/"),P(a,b,c,e).then(a=>{if(a.error){for(let[a,b]of j)b&&n(a,{state:b});d.toast.error(a.error)}else for(let a of(p(h),i))p(a)}).catch(()=>{for(let[a,b]of j)b&&n(a,{state:b});d.toast.error("Failed to delete feature")}).finally(()=>B())},[f,g,n,p,A,B]),as=(0,b.useCallback)(async(a,b)=>{let c=`repo-${a}`,e=new Set(E.current.filter(a=>a.source===c).map(a=>a.target)),f=v(c),h=new Map;for(let a of e){let b=D.current.find(b=>b.id===a);b&&h.set(a,{nodeId:a,data:b.data})}let i=()=>{for(let[a,b]of(f&&r(c,f),h))q(a,b)};for(let a of(A(),s(c),e))p(a);try{let c=await V(a,{deleteFromDisk:b?.deleteFromDisk===!0});if(!c.success){d.toast.error(c.error??"Failed to remove repository"),i();return}g.play()}catch{d.toast.error("Failed to remove repository"),i()}finally{B()}},[g,s,p,r,q,v,A,B]),at=(0,b.useCallback)(async a=>{let b=`app-${a}`;A(),y(b),g.play();try{let b=await W(a);b.error&&d.toast.error(b.error)}catch{d.toast.error("Failed to delete application")}finally{B()}},[g,y,A,B]),au=(0,b.useCallback)(a=>{let b=M(D.current,E.current,{...J(),direction:a});m(b.nodes,b.edges)},[m]);return{nodes:k,edges:l,onNodesChange:aj,handleConnect:ak,handleAddRepository:(0,b.useCallback)(a=>{let b=0===w(),c=`repo-temp-${++ah}`,e=a.replace(/[\\/]+$/,"").split(/[\\/]/).pop()??a;return A(),r(c,{name:e,repositoryPath:a,id:c,createdAt:Date.now(),gitInfoStatus:"loading"}),(0,U.addRepository)({path:a,name:e}).then(a=>{if(a.error){s(c),d.toast.error(a.error);return}let b=a.repository;t(c,`repo-${b.id}`,{name:b.name,repositoryPath:b.path,id:b.id,createdAt:b.createdAt instanceof Date?b.createdAt.getTime():Number(b.createdAt)}),h.play()}).catch(()=>{s(c),d.toast.error("Failed to add repository")}).finally(()=>B()),{wasEmpty:b,repoPath:a,tempNodeId:c}},[r,s,t,h,w,A,B]),handleArchiveFeature:ap,handleLayout:au,handleDeleteFeature:ar,handleRetryFeature:am,handleStartFeature:an,handleStopFeature:ao,handleUnarchiveFeature:aq,handleDeleteRepository:as,handleDeleteApplication:at,createFeatureNode:al,addApplication:x,showArchived:i,setShowArchived:j,getFeatureRepositoryPath:u,getRepositoryData:v,setCallbacks:z}}a.s(["useControlCenterState",()=>ai],16533)},59949,a=>{"use strict";var b=a.i(12656),c=a.i(84945),d=a.i(43707),e=a.i(96960),f=a.i(69845),g=a.i(42527),h=a.i(67837);a.i(90370);var i=a.i(24640),j=a.i(85536),k=a.i(18948);a.i(38702);var l=a.i(16223);a.i(54250);var m=a.i(1330),n=a.i(60047),o=a.i(25700);let p=(0,o.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 q=a.i(50488),r=a.i(63698),s=a.i(3195),t=a.i(16605),u=a.i(50490),v=a.i(5698),w=a.i(53170),x=a.i(92548),y=a.i(45449),z=a.i(81781),A=a.i(18615),B=a.i(12882),C=a.i(97708);a.i(69029);var D=a.i(5623),E=a.i(45670),F=a.i(44239),G=a.i(584),H=a.i(82934),I=a.i(18662),J=a.i(21333),K=a.i(55628),L=a.i(5555),M=a.i(33419),N=a.i(61583);function O({data:a,selected:d}){let{t:g,i18n:l}=(0,i.useTranslation)("web"),m=(0,f.useRouter)(),o="rtl"===l.dir(),O=o?n.Position.Right:n.Position.Left,P=o?n.Position.Left:n.Position.Right,Q=(0,J.useFeatureFlags)(),[R,S]=(0,e.useState)(!1),[T,U]=(0,e.useState)(!1);(0,e.useEffect)(()=>{R&&U(!1)},[R]);let V=a.id?`repo-${a.id}`:`repo-${a.name}`,W=(0,M.useTurnStatus)(V),X=(0,K.useRepositoryActions)(a.repositoryPath?{repositoryId:a.id,repositoryPath:a.repositoryPath}:null),Y=(0,I.useDeployAction)(a.repositoryPath?{targetId:a.repositoryPath,targetType:"repository",repositoryPath:a.repositoryPath}:null),Z="Booting"===Y.status||"Ready"===Y.status,$=(0,e.useCallback)((b,c)=>{if(!a.repositoryPath)return;let d=b.preview?b.preview.slice(0,200):"Unknown conversation",e=["Continue work from a previous agent session.","","## Session Context",`- Session ID: ${b.id}`,`- Messages: ${b.messageCount}`,b.lastMessageAt?`- Last active: ${b.lastMessageAt}`:"",`- Conversation file: ${c}`,"","## Session Preview",`> ${d}`,"","## 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"),f=new URLSearchParams({repo:a.repositoryPath,prompt:e});m.push(`/create?${f.toString()}`)},[a.repositoryPath,m]);return(0,b.jsxs)("div",{className:(0,j.cn)("group relative",a.onDelete&&a.id&&"ps-10"),style:{direction:o?"rtl":"ltr"},children:[a.showHandles?(0,b.jsx)(c.Handle,{type:"target",position:O,isConnectable:!1,className:"opacity-0!",style:{top:70}}):null,a.onDelete&&a.id?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"absolute -start-3 top-1/2 -translate-y-1/2 opacity-0 transition-opacity group-hover:opacity-100",children:(0,b.jsx)(H.TooltipProvider,{children:(0,b.jsxs)(H.Tooltip,{children:[(0,b.jsx)(H.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{"aria-label":g("repositoryNode.removeRepository"),"data-testid":"repository-node-delete-button",onClick:a=>{a.stopPropagation(),S(!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,b.jsx)(t.Trash2,{className:"h-3.5 w-3.5"})})}),(0,b.jsx)(H.TooltipContent,{children:g("repositoryNode.removeRepository")})]})})}),(0,b.jsx)(E.Dialog,{open:R,onOpenChange:S,children:(0,b.jsxs)(E.DialogContent,{className:"max-w-sm",children:[(0,b.jsxs)(E.DialogHeader,{children:[(0,b.jsx)(E.DialogTitle,{children:g("repositoryNode.removeConfirmTitle")}),(0,b.jsxs)(E.DialogDescription,{children:[(0,b.jsx)(C.Trans,{t:g,i18nKey:"repositoryNode.removeConfirmDescription",values:{name:a.name},components:{strong:(0,b.jsx)("strong",{})}})," ",g(T?"repositoryNode.removeConfirmDescriptionDeleteFiles":"repositoryNode.removeConfirmDescriptionKeepFiles")]})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(F.Checkbox,{id:"repository-delete-from-disk",checked:T,onCheckedChange:a=>U(!0===a),"data-testid":"repository-node-delete-from-disk-checkbox","aria-label":g("repositoryNode.deleteFromDiskLabel")}),(0,b.jsx)(G.Label,{htmlFor:"repository-delete-from-disk",className:"cursor-pointer text-sm font-normal",children:g("repositoryNode.deleteFromDiskLabel")})]}),(0,b.jsxs)(E.DialogFooter,{className:"grid grid-cols-2 gap-2 sm:flex-none",children:[(0,b.jsx)(E.DialogClose,{asChild:!0,children:(0,b.jsx)(k.Button,{variant:"outline",children:g("repositoryNode.cancel")})}),(0,b.jsx)(k.Button,{variant:"destructive","data-testid":"repository-node-delete-confirm-button",onClick:()=>{S(!1),a.onDelete?.(a.id,{deleteFromDisk:T})},children:g("repositoryNode.remove")})]})]})})]}):null,(0,b.jsxs)("div",{role:"button",tabIndex:0,"data-testid":"repository-node-card","data-repo-name":a.name,onClick:b=>{b.stopPropagation(),a.onClick?.()},onKeyDown:b=>{("Enter"===b.key||" "===b.key)&&(b.preventDefault(),b.stopPropagation(),a.onClick?.())},className:(0,j.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",d&&"border-blue-400 dark:border-amber-500/60"),children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 px-4 py-3",children:[(0,b.jsx)(p,{className:"text-muted-foreground h-5 w-5 shrink-0"}),(0,b.jsx)("span",{"data-testid":"repository-node-name",className:"min-w-0 truncate text-sm font-medium",children:a.name}),(0,b.jsxs)("div",{className:(0,j.cn)("flex shrink-0 items-center gap-2",(a.repositoryPath??a.onAdd)&&"ms-auto"),onClick:a=>a.stopPropagation(),children:[a.repositoryPath?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(H.TooltipProvider,{children:(0,b.jsxs)(H.Tooltip,{children:[(0,b.jsx)(H.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:"flex items-center",children:(0,b.jsx)(D.ActionButton,{label:g("repositoryNode.openInIde"),onClick:X.openInIde,loading:X.ideLoading,error:!!X.ideError,icon:q.Code2,iconOnly:!0,variant:"ghost",size:"icon-xs"})})}),(0,b.jsx)(H.TooltipContent,{children:g("repositoryNode.openInIde")})]})}),(0,b.jsx)(H.TooltipProvider,{children:(0,b.jsxs)(H.Tooltip,{children:[(0,b.jsx)(H.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:"flex items-center",children:(0,b.jsx)(D.ActionButton,{label:g("repositoryNode.openInShell"),onClick:X.openInShell,loading:X.shellLoading,error:!!X.shellError,icon:r.Terminal,iconOnly:!0,variant:"ghost",size:"icon-xs"})})}),(0,b.jsx)(H.TooltipContent,{children:g("repositoryNode.openInShell")})]})}),(0,b.jsx)(H.TooltipProvider,{children:(0,b.jsxs)(H.Tooltip,{children:[(0,b.jsx)(H.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:"flex items-center",children:(0,b.jsx)(D.ActionButton,{label:g("repositoryNode.openFolder"),onClick:X.openFolder,loading:X.folderLoading,error:!!X.folderError,icon:s.FolderOpen,iconOnly:!0,variant:"ghost",size:"icon-xs"})})}),(0,b.jsx)(H.TooltipContent,{children:g("repositoryNode.openFolder")})]})}),(0,b.jsx)(H.TooltipProvider,{children:(0,b.jsxs)(H.Tooltip,{children:[(0,b.jsx)(H.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)(k.Button,{variant:"ghost",size:"icon-xs","aria-label":g("repositoryNode.chatWithAgent"),onClick:b=>{b.stopPropagation(),a.id&&m.push(`/repository/${a.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,b.jsx)(B.MessageSquare,{className:"h-3 w-3"}),(0,b.jsx)(L.ChatDotIndicator,{status:W})]})}),(0,b.jsx)(H.TooltipContent,{children:g("repositoryNode.chatWithAgent")})]})}),(0,b.jsx)(N.FeatureSessionsDropdown,{repositoryPath:a.repositoryPath,includeWorktrees:!0,onCreateFromSession:$})]}):null,a.onAdd?(0,b.jsx)("div",{className:"ms-1.5"}):null,a.onAdd?(0,b.jsx)(H.TooltipProvider,{children:(0,b.jsxs)(H.Tooltip,{children:[(0,b.jsx)(H.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("button",{"aria-label":g("repositoryNode.newFeature"),"data-testid":"repository-node-add-button",onClick:b=>{b.stopPropagation(),a.onAdd?.()},className:(0,j.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",a.pulseAdd&&"animate-pulse-cta"),children:[(0,b.jsx)(h.Plus,{className:"h-3 w-3"}),(0,b.jsx)("span",{className:"translate-y-px",children:g("repositoryNode.new")})]})}),(0,b.jsx)(H.TooltipContent,{side:"top",children:g("repositoryNode.newFeature")})]})}):null]})]}),a.branch?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{"data-testid":"repository-node-git-info",className:"text-muted-foreground border-border/50 border-t px-4 py-2",children:(0,b.jsxs)("div",{className:"flex items-center gap-3 text-xs",children:[(0,b.jsxs)("span",{className:"flex items-center gap-1 truncate","data-testid":"repository-node-branch",children:[(0,b.jsx)(w.GitBranch,{className:"h-3 w-3 shrink-0"}),(0,b.jsx)("span",{className:"truncate",children:a.branch})]}),null!=a.behindCount&&a.behindCount>0?(0,b.jsxs)("span",{className:"flex shrink-0 items-center gap-1 whitespace-nowrap text-amber-500","data-testid":"repository-node-behind",children:[(0,b.jsx)(y.ArrowDown,{className:"h-3 w-3 shrink-0"}),g("repositoryNode.behind",{count:a.behindCount})]}):null]})}),a.commitMessage?(0,b.jsx)("div",{"data-testid":"repository-node-commit-info",className:"text-muted-foreground border-border/50 border-t px-4 py-2",children:(0,b.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[(0,b.jsx)(x.GitCommitHorizontal,{className:"h-3 w-3 shrink-0"}),(0,b.jsx)("span",{className:"min-w-0 truncate","data-testid":"repository-node-commit-message",children:a.commitMessage}),a.committer?(0,b.jsxs)("span",{className:"text-muted-foreground/70 ms-auto flex shrink-0 items-center gap-1","data-testid":"repository-node-committer",children:[(0,b.jsx)(z.User,{className:"h-3 w-3 shrink-0"}),(0,b.jsx)("span",{children:a.committer})]}):null]})}):null]}):"not-a-repo"===a.gitInfoStatus?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{"data-testid":"repository-node-not-repo",className:"text-muted-foreground border-border/50 border-t px-4 py-2",children:(0,b.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[(0,b.jsx)(s.FolderOpen,{className:"h-3 w-3 shrink-0"}),(0,b.jsx)("span",{className:"min-w-0 truncate opacity-60",children:a.repositoryPath??"Unknown path"})]})}),(0,b.jsx)("div",{className:"text-muted-foreground border-border/50 border-t px-4 py-2",children:(0,b.jsxs)("div",{className:"flex items-center gap-2 text-xs opacity-40",children:[(0,b.jsx)(w.GitBranch,{className:"h-3 w-3 shrink-0"}),(0,b.jsx)("span",{children:g("repositoryNode.notAGitRepository")})]})})]}):"ready"!==a.gitInfoStatus?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{"data-testid":"repository-node-git-loading",className:"border-border/50 border-t px-4 py-2",children:(0,b.jsxs)("div",{className:"flex h-4 items-center gap-2 text-xs",children:[(0,b.jsx)(w.GitBranch,{className:"text-muted-foreground h-3 w-3 shrink-0"}),(0,b.jsx)("span",{className:"bg-muted h-3 w-20 animate-pulse rounded"})]})}),(0,b.jsx)("div",{className:"border-border/50 border-t px-4 py-2",children:(0,b.jsxs)("div",{className:"flex h-4 items-center gap-2 text-xs",children:[(0,b.jsx)(x.GitCommitHorizontal,{className:"text-muted-foreground h-3 w-3 shrink-0"}),(0,b.jsx)("span",{className:"bg-muted h-3 w-36 animate-pulse rounded"})]})})]}):null,Q.envDeploy&&a.repositoryPath?(0,b.jsx)("div",{"data-testid":"repository-node-dev-preview",className:"border-border/50 border-t px-4 py-2",onClick:a=>a.stopPropagation(),children:(0,b.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[Y.deployError?(0,b.jsx)("span",{className:"truncate text-xs text-red-500",children:Y.deployError}):Z?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"me-0.5 inline-block h-2 w-2 shrink-0 rounded-full bg-green-500"}),Y.url?(0,b.jsx)("a",{href:Y.url,target:"_blank",rel:"noopener noreferrer",className:"truncate text-green-700 hover:underline dark:text-green-400",children:Y.url}):(0,b.jsx)("span",{className:"text-muted-foreground",children:g("repositoryNode.starting")})]}):(0,b.jsxs)("span",{className:"text-muted-foreground inline-flex items-baseline gap-2",children:[(0,b.jsx)("span",{children:g("repositoryNode.run")}),(0,b.jsx)("span",{className:"text-muted-foreground/50 text-[10px]",children:g("repositoryNode.startLocalEnvironment")})]}),(0,b.jsx)(H.TooltipProvider,{children:(0,b.jsxs)(H.Tooltip,{children:[(0,b.jsx)(H.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:(0,j.cn)("ms-auto flex items-center",!Z&&!Y.deployError&&"[&_button]:text-green-600 [&_button]:hover:text-green-700 dark:[&_button]:text-green-400 dark:[&_button]:hover:text-green-300"),children:(0,b.jsx)(D.ActionButton,{label:g(Y.deployError?"repositoryNode.retry":Z?"repositoryNode.stopDevServer":"repositoryNode.startDevServer"),onClick:Z?Y.stop:Y.deploy,loading:Y.deployLoading||Y.stopLoading,error:!1,icon:Y.deployError?A.RotateCcw:Z?v.Square:u.Play,iconOnly:!0,variant:"ghost",size:"icon-xs"})})}),(0,b.jsx)(H.TooltipContent,{children:g(Z?"repositoryNode.stopDevServer":"repositoryNode.startDevServer")})]})})]})}):null]}),a.onAdd||a.showHandles?(0,b.jsx)(c.Handle,{type:"source",position:P,isConnectable:!a.showHandles,className:"opacity-0!",style:{top:70}}):null]})}a.i(78454),a.i(2824),a.i(13126);var P=a.i(71238),Q=a.i(82014),R=a.i(88064),S=a.i(93193),T=a.i(46847);function U({data:a,selected:d}){var f,g;let{i18n:h}=(0,i.useTranslation)("web"),l="rtl"===h.dir(),m=l?n.Position.Right:n.Position.Left,o=l?n.Position.Left:n.Position.Right,[p,q]=(0,e.useState)(!1),r=1+a.additionalPathCount,s=1===r?"1 repository":`${r} repositories`,w=(0,M.useTurnStatus)(`app-${a.id}`),x=(0,I.useDeployAction)({targetId:a.id,targetType:"application",repositoryPath:a.repositoryPath}),y=x.url,z=(f=a.status,g=y??void 0,"processing"===w?{label:"In Progress",dotClass:"bg-violet-500",pulse:!0}:"awaiting_input"===w?{label:"Warning",dotClass:"bg-amber-500",pulse:!0}:g?{label:"Live",dotClass:"bg-emerald-500",pulse:!0}:"Error"===f?{label:"Error",dotClass:"bg-red-500",pulse:!1}:{label:"Ready",dotClass:"bg-sky-500",pulse:!1}),A=(0,e.useCallback)(a=>{a.stopPropagation()},[]),B=(0,e.useCallback)(a=>{a.stopPropagation(),y&&window.open(y,"_blank","noopener,noreferrer")},[y]);return(0,b.jsxs)("div",{className:"group relative",style:{direction:l?"rtl":"ltr"},children:[(0,b.jsx)(c.Handle,{type:"target",position:m,isConnectable:!1,className:"opacity-0!",style:{top:70}}),a.onDelete&&a.id?(0,b.jsxs)(b.Fragment,{children:[(0,b.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:a=>a.stopPropagation(),children:(0,b.jsx)(H.TooltipProvider,{children:(0,b.jsxs)(H.Tooltip,{children:[(0,b.jsx)(H.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{"aria-label":"Remove application","data-testid":"application-node-delete-button",onClick:a=>{a.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,b.jsx)(t.Trash2,{className:"h-3.5 w-3.5"})})}),(0,b.jsx)(H.TooltipContent,{children:"Remove application"})]})})}),(0,b.jsx)(E.Dialog,{open:p,onOpenChange:q,children:(0,b.jsxs)(E.DialogContent,{className:"max-w-xs",children:[(0,b.jsxs)(E.DialogHeader,{children:[(0,b.jsx)(E.DialogTitle,{children:"Remove application?"}),(0,b.jsxs)(E.DialogDescription,{children:["This will remove ",(0,b.jsx)("strong",{children:a.name})," from your workspace."]})]}),(0,b.jsxs)(E.DialogFooter,{className:"grid grid-cols-2 gap-2 sm:flex-none",children:[(0,b.jsx)(E.DialogClose,{asChild:!0,children:(0,b.jsx)(k.Button,{variant:"outline",children:"Cancel"})}),(0,b.jsx)(k.Button,{variant:"destructive",onClick:()=>{q(!1),a.onDelete?.(a.id)},children:"Remove"})]})]})})]}):null,(0,b.jsxs)("div",{role:"button",tabIndex:0,"data-testid":"application-node-card","data-app-name":a.name,onClick:b=>{b.stopPropagation(),a.onClick?.()},onKeyDown:b=>{("Enter"===b.key||" "===b.key)&&(b.preventDefault(),b.stopPropagation(),a.onClick?.())},className:(0,j.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",d&&"border-blue-400 dark:border-amber-500/60"),children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 px-4 py-4",children:[(0,b.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,b.jsx)(Q.LayoutGrid,{className:"h-4 w-4 text-white"})}),(0,b.jsx)("span",{"data-testid":"application-node-name",className:"min-w-0 truncate text-sm font-medium",children:a.name}),(0,b.jsxs)("span",{className:"ms-auto flex shrink-0 items-center gap-1.5",children:[(0,b.jsx)("span",{"data-testid":"application-node-status-dot",className:(0,j.cn)("relative flex h-2 w-2 items-center justify-center rounded-full",z.dotClass),children:z.pulse?(0,b.jsx)("span",{className:(0,j.cn)("absolute inline-flex h-full w-full animate-ping rounded-full opacity-60",z.dotClass)}):null}),(0,b.jsx)("span",{"data-testid":"application-node-status-text",className:"text-muted-foreground text-xs",children:z.label})]})]}),(0,b.jsx)("div",{className:"px-4 pb-4",children:(0,b.jsxs)("div",{className:"bg-muted group/preview relative overflow-hidden rounded-lg",style:{height:180},children:[y?(0,b.jsx)("iframe",{src:y,title:`${a.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,b.jsxs)("div",{className:"pointer-events-none absolute inset-0 opacity-50 grayscale",children:[(0,b.jsxs)("div",{className:"flex h-6 items-center gap-2 px-2",style:{background:"var(--muted)"},children:[(0,b.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-2 rounded-full"}),(0,b.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-2 rounded-full"}),(0,b.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-2 rounded-full"}),(0,b.jsx)("div",{className:"bg-muted-foreground/10 ms-2 h-2 w-16 rounded"})]}),(0,b.jsxs)("div",{className:"flex h-[calc(100%-1.5rem)]",children:[(0,b.jsxs)("div",{className:"border-muted-foreground/5 flex w-[50px] flex-col gap-2 border-e p-2",children:[(0,b.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-full rounded"}),(0,b.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-3/4 rounded"}),(0,b.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-full rounded"})]}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col gap-2 p-3",children:[(0,b.jsx)("div",{className:"bg-muted-foreground/10 h-2.5 w-2/3 rounded"}),(0,b.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-full rounded"}),(0,b.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-5/6 rounded"}),(0,b.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-3/4 rounded"}),(0,b.jsx)("div",{className:"bg-muted-foreground/10 h-2 w-2/3 rounded"})]})]})]}),x.status===T.DeploymentState.Ready&&y?(0,b.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:A,onClick:A,children:[(0,b.jsxs)("button",{type:"button",onClick:a=>{a.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,b.jsx)(R.Loader2,{className:"h-3.5 w-3.5 animate-spin"}):(0,b.jsx)(v.Square,{className:"h-3.5 w-3.5 fill-current"}),(0,b.jsx)("span",{children:"Stop"})]}),(0,b.jsxs)("button",{type:"button",onClick:B,"aria-label":`Open ${a.name} in a new tab`,title:y,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,b.jsx)(P.ExternalLink,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{children:"Open"})]})]}):null,x.status===T.DeploymentState.Booting||x.deployLoading?(0,b.jsxs)("div",{className:"absolute inset-0 flex flex-col items-center justify-center gap-2 bg-neutral-100 dark:bg-neutral-900",children:[(0,b.jsx)(R.Loader2,{className:"h-8 w-8 animate-spin text-amber-500"}),(0,b.jsx)("span",{className:"text-foreground text-xs font-medium",children:"Starting…"})]}):null,x.stopLoading&&x.status===T.DeploymentState.Ready?(0,b.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,b.jsx)(R.Loader2,{className:"h-8 w-8 animate-spin text-neutral-100"}),(0,b.jsx)("span",{className:"text-xs font-medium text-neutral-100",children:"Stopping…"})]}):null,x.deployLoading||x.stopLoading||x.status===T.DeploymentState.Booting||x.status===T.DeploymentState.Ready||!x.deployError?null:(0,b.jsxs)("button",{type:"button",onClick:a=>{a.stopPropagation(),x.deploy()},onPointerDown:A,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,b.jsx)(S.TriangleAlert,{className:"h-8 w-8 text-red-500"}),(0,b.jsx)("span",{className:"text-xs font-medium text-red-600 dark:text-red-400",children:"Failed — click to retry"})]}),!y&&!x.deployLoading&&x.status!==T.DeploymentState.Booting&&!x.deployError&&(0,b.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,b.jsxs)("button",{type:"button",onClick:a=>{a.stopPropagation(),x.deploy()},onPointerDown:A,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,b.jsx)(u.Play,{className:"h-3.5 w-3.5 fill-current"}),(0,b.jsx)("span",{children:"Start Preview"})]})})]})}),(0,b.jsx)("div",{className:"px-4 pb-4",children:(0,b.jsx)("span",{"data-testid":"application-node-repo-count",className:"text-muted-foreground text-xs",children:s})})]}),(0,b.jsx)(c.Handle,{type:"source",position:o,isConnectable:!1,className:"opacity-0!",style:{top:70}})]})}function V(a){let[d]=(0,n.getBezierPath)({sourceX:a.sourceX,sourceY:a.sourceY,targetX:a.targetX,targetY:a.targetY,sourcePosition:a.sourcePosition,targetPosition:a.targetPosition});return(0,b.jsx)(c.BaseEdge,{id:a.id,path:d,style:{strokeDasharray:"5 5"}})}let W={x:30,y:30,zoom:.85};function X({nodes:a,edges:d,selectedFeatureId:f,selectedRepository:g,defaultViewport:n,onNodesChange:o,onAddFeature:p,onConnect:q,onNodeClick:r,onPaneClick:s,onCanvasDrag:t,onMoveEnd:u,toolbar:v,emptyState:w}){let{t:x}=(0,i.useTranslation)("web"),y=(0,e.useMemo)(()=>({featureNode:m.FeatureNode,repositoryNode:O,applicationNode:U}),[]),z=(0,e.useMemo)(()=>({dependencyEdge:V}),[]),A=(0,e.useMemo)(()=>{let b=null!=f,c=null!=g&&(null!=g.id||null!=g.path);return b||c?a.map(a=>{if(b&&"featureNode"===a.type&&a.data.featureId===f)return{...a,selected:!0};if(c&&"repositoryNode"===a.type){let b=a.data,c=null!=g.id&&(a.id===g.id||b.id===g.id),d=null!=g.path&&b.repositoryPath===g.path;if(c||d)return{...a,selected:!0}}return a}):a},[a,f,g]),B=0===a.length,[C,D]=(0,e.useState)(B),[E,F]=(0,e.useState)(!1),G=(0,e.useRef)(B);(0,e.useEffect)(()=>{if(G.current&&!B){F(!0);let a=setTimeout(()=>{D(!1),F(!1)},300);return G.current=B,()=>clearTimeout(a)}!G.current&&B&&D(!0),G.current=B},[B]);let H=B&&!w?(0,b.jsx)(l.EmptyState,{title:x("canvas.noFeatures"),description:x("canvas.noFeaturesDescription"),action:(0,b.jsxs)(k.Button,{onClick:p,children:[(0,b.jsx)(h.Plus,{className:"me-2 h-4 w-4"}),x("canvas.newFeature")]})}):null,I=w??H;return(0,b.jsxs)("div",{"data-testid":B?"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,b.jsxs)(c.ReactFlow,{nodes:A,edges:d,nodeTypes:y,edgeTypes:z,onConnect:q,onNodesChange:o,onNodeClick:r,onPaneClick:s,onMoveStart:t,onMoveEnd:u,defaultViewport:n??W,nodesDraggable:!1,nodesConnectable:!1,elementsSelectable:!1,proOptions:{hideAttribution:!0},className:"[&_.react-flow__pane]:!cursor-default",children:[(0,b.jsx)(c.Background,{variant:c.BackgroundVariant.Dots,gap:24,size:1,color:"#b8bcc4",className:"dark:[&_circle]:!fill-white/[0.1]"}),v&&!B?(0,b.jsx)(c.Panel,{position:"top-right",className:"!me-3 !mt-3",children:v}):null]}),C&&I?(0,b.jsx)("div",{className:(0,j.cn)("pointer-events-none absolute inset-0 z-10 flex items-center justify-center transition-opacity duration-300",E?"opacity-0":"animate-in fade-in opacity-100 duration-200"),children:(0,b.jsx)("div",{className:"pointer-events-auto h-full w-full",children:I})}):null,v&&B?(0,b.jsx)("div",{className:"pointer-events-auto absolute end-3 top-3 z-20",children:v}):null]})}var Y=a.i(83886);let Z=(0,o.default)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]),$=(0,o.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"}]]),_=(0,o.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"}]]),aa=(0,o.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 ab({showArchived:a,onToggleArchived:d,onResetViewport:f,startSlot:g}){let{t:h}=(0,i.useTranslation)("web"),{zoomIn:j,zoomOut:k,fitView:l,setViewport:m}=(0,c.useReactFlow)(),n=(0,e.useCallback)(()=>{j({duration:200})},[j]),o=(0,e.useCallback)(()=>{k({duration:200})},[k]),p=(0,e.useCallback)(()=>{l({duration:400,padding:.3})},[l]),q=(0,e.useCallback)(()=>{f&&m(f(),{duration:400})},[f,m]);return(0,b.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:[g?(0,b.jsxs)(b.Fragment,{children:[g,(0,b.jsx)("div",{className:"bg-border mx-1 h-5 w-px"})]}):null,(0,b.jsx)(ac,{onClick:d,title:h(a?"canvas.hideArchived":"canvas.showArchived"),active:a,label:h(a?"canvas.hideArchivedLabel":"canvas.showArchivedLabel"),children:a?(0,b.jsx)(Y.Eye,{className:"h-4 w-4"}):(0,b.jsx)(Z,{className:"h-4 w-4"})}),(0,b.jsx)("div",{className:"bg-border mx-1 h-5 w-px"}),(0,b.jsx)(ac,{onClick:o,title:h("canvas.zoomOut"),children:(0,b.jsx)(_,{className:"h-4 w-4"})}),(0,b.jsx)(ac,{onClick:n,title:h("canvas.zoomIn"),children:(0,b.jsx)($,{className:"h-4 w-4"})}),(0,b.jsx)(ac,{onClick:p,title:h("canvas.fitView"),children:(0,b.jsx)(aa,{className:"h-4 w-4"})}),f?(0,b.jsx)(ac,{onClick:q,title:h("canvas.resetView"),children:(0,b.jsx)(A.RotateCcw,{className:"h-4 w-4"})}):null]})}function ac({children:a,onClick:c,title:d,label:e,active:f}){return(0,b.jsxs)("button",{type:"button",onClick:c,title:d,className:(0,j.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",f?"text-primary bg-primary/10":"text-muted-foreground"),children:[a,e?(0,b.jsx)("span",{children:e}):null]})}var ad=a.i(65758),ae=a.i(72016),af=a.i(93741),ag=a.i(79794),ah=a.i(75192);let ai="default",aj={workspaces:[{id:ai,name:"Default",repoIds:[],featureIds:[]}],activeWorkspaceId:ai};function ak({workspaces:a,activeWorkspace:c,onSelect:d,onRequestCreate:f,onRequestRename:g,onRequestDelete:i,onManage:k}){let[l,m]=(0,e.useState)(!1),n=c.id===ai;return(0,b.jsxs)(ah.DropdownMenu,{open:l,onOpenChange:m,children:[(0,b.jsx)(ah.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsxs)("button",{type:"button","data-testid":"workspace-selector-trigger",className:(0,j.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",n?"text-muted-foreground":"text-primary bg-primary/10"),title:"Workspace",children:[(0,b.jsx)(ad.Layers,{className:"h-4 w-4"}),(0,b.jsx)("span",{className:"max-w-[120px] truncate",children:c.name})]})}),(0,b.jsxs)(ah.DropdownMenuContent,{align:"start",className:"min-w-[220px]",children:[(0,b.jsx)(ah.DropdownMenuLabel,{children:"Workspaces"}),(0,b.jsx)(ah.DropdownMenuSeparator,{}),a.map(a=>{let e=a.id===c.id,f=a.id!==ai;return(0,b.jsxs)(ah.DropdownMenuItem,{onSelect:()=>d(a.id),className:"group/ws-row flex items-center justify-between gap-2",children:[(0,b.jsx)("span",{className:"truncate",children:a.name}),(0,b.jsxs)("span",{className:"flex shrink-0 items-center gap-1",children:[e?(0,b.jsx)(ae.Check,{className:"h-3.5 w-3.5"}):null,f?(0,b.jsx)("button",{type:"button","aria-label":`Delete workspace ${a.name}`,title:`Delete workspace ${a.name}`,onClick:b=>{b.preventDefault(),b.stopPropagation(),m(!1),i(a.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,b.jsx)(t.Trash2,{className:"h-3.5 w-3.5"})}):null]})]},a.id)}),(0,b.jsx)(ah.DropdownMenuSeparator,{}),(0,b.jsxs)(ah.DropdownMenuItem,{onSelect:f,children:[(0,b.jsx)(h.Plus,{className:"mr-2 h-3.5 w-3.5"}),"New workspace…"]}),(0,b.jsxs)(ah.DropdownMenuItem,{onSelect:k,disabled:n,children:[(0,b.jsx)(ag.SlidersHorizontal,{className:"mr-2 h-3.5 w-3.5"}),"Manage items…"]}),(0,b.jsxs)(ah.DropdownMenuItem,{onSelect:g,disabled:n,children:[(0,b.jsx)(af.Pencil,{className:"mr-2 h-3.5 w-3.5"}),"Rename"]})]})]})}var al=a.i(25603);function am({open:a,onOpenChange:c,workspace:d,allNodes:f,onSave:g}){let[h,i]=(0,e.useState)(new Set),[j,l]=(0,e.useState)(new Set);(0,e.useEffect)(()=>{a&&(i(new Set(d.repoIds)),l(new Set(d.featureIds)))},[a,d]);let m=(0,e.useMemo)(()=>{let a=[],b=new Map;for(let c of f){if("repositoryNode"!==c.type)continue;let d=c.data,e=d.repositoryPath??"",f={nodeId:c.id,name:d.name??e.split("/").filter(Boolean).pop()??e,features:[]};a.push(f),b.set(e,f)}for(let a of f){if("featureNode"!==a.type)continue;let c=a.data,d=b.get(c.repositoryPath??"");d&&d.features.push({nodeId:a.id,name:c.name})}return a},[f]);return(0,b.jsx)(E.Dialog,{open:a,onOpenChange:c,children:(0,b.jsxs)(E.DialogContent,{className:"max-h-[80vh] max-w-lg overflow-hidden",children:[(0,b.jsxs)(E.DialogHeader,{children:[(0,b.jsxs)(E.DialogTitle,{children:["Manage workspace: ",d.name]}),(0,b.jsx)(E.DialogDescription,{children:"Select the repositories and features that should appear on this workspace's canvas."})]}),(0,b.jsx)("div",{className:"-mx-6 max-h-[50vh] overflow-y-auto px-6",children:0===m.length?(0,b.jsx)("p",{className:"text-muted-foreground py-8 text-center text-sm",children:"No repositories on the canvas yet."}):(0,b.jsx)("ul",{className:"space-y-3 py-2",children:m.map(a=>(0,b.jsxs)("li",{children:[(0,b.jsxs)("label",{className:"hover:bg-accent/30 flex cursor-pointer items-center gap-2 rounded-md px-2 py-1.5",children:[(0,b.jsx)(F.Checkbox,{checked:h.has(a.nodeId),onCheckedChange:()=>{var b;return b=a.nodeId,void i(a=>{let c=new Set(a);return c.has(b)?c.delete(b):c.add(b),c})}}),(0,b.jsx)(w.GitBranch,{className:"text-muted-foreground h-4 w-4"}),(0,b.jsx)("span",{className:"text-sm font-medium",children:a.name})]}),a.features.length>0?(0,b.jsx)("ul",{className:"mt-1 ml-7 space-y-0.5",children:a.features.map(a=>(0,b.jsx)("li",{children:(0,b.jsxs)("label",{className:"hover:bg-accent/30 flex cursor-pointer items-center gap-2 rounded-md px-2 py-1",children:[(0,b.jsx)(F.Checkbox,{checked:j.has(a.nodeId),onCheckedChange:()=>{var b;return b=a.nodeId,void l(a=>{let c=new Set(a);return c.has(b)?c.delete(b):c.add(b),c})}}),(0,b.jsx)(al.Sparkles,{className:"text-muted-foreground h-3.5 w-3.5"}),(0,b.jsx)("span",{className:"text-muted-foreground text-xs",children:a.name})]})},a.nodeId))}):null]},a.nodeId))})}),(0,b.jsxs)(E.DialogFooter,{children:[(0,b.jsx)(k.Button,{variant:"ghost",onClick:()=>c(!1),children:"Cancel"}),(0,b.jsx)(k.Button,{onClick:()=>{g({repoIds:Array.from(h),featureIds:Array.from(j)}),c(!1)},children:"Save"})]})]})})}var an=a.i(90920);function ao({open:a,onOpenChange:c,title:d,description:f,initialValue:g="",confirmLabel:h,onConfirm:i}){let[j,l]=(0,e.useState)(g);return(0,e.useEffect)(()=>{a&&l(g)},[a,g]),(0,b.jsx)(E.Dialog,{open:a,onOpenChange:c,children:(0,b.jsx)(E.DialogContent,{className:"max-w-sm",children:(0,b.jsxs)("form",{onSubmit:a=>{a.preventDefault();let b=j.trim();b&&(i(b),c(!1))},children:[(0,b.jsxs)(E.DialogHeader,{children:[(0,b.jsx)(E.DialogTitle,{children:d}),f?(0,b.jsx)(E.DialogDescription,{children:f}):null]}),(0,b.jsx)("div",{className:"py-4",children:(0,b.jsx)(an.Input,{autoFocus:!0,value:j,onChange:a=>l(a.target.value),placeholder:"Workspace name","data-testid":"workspace-name-input"})}),(0,b.jsxs)(E.DialogFooter,{children:[(0,b.jsx)(k.Button,{type:"button",variant:"ghost",onClick:()=>c(!1),children:"Cancel"}),(0,b.jsx)(k.Button,{type:"submit",disabled:!j.trim(),children:h})]})]})})})}var ap=a.i(3703),aq=a.i(2807);function ar({actions:a,className:c,style:d}){let{t:f}=(0,i.useTranslation)("web"),[g,l]=(0,e.useState)(!1);return(0,e.useEffect)(()=>{if(g)return document.addEventListener("keydown",a),()=>document.removeEventListener("keydown",a);function a(a){"Escape"===a.key&&l(!1)}},[g]),(0,b.jsxs)(b.Fragment,{children:[g?(0,b.jsx)("div",{"data-testid":"fab-overlay",className:"fixed inset-0 z-40",onClick:()=>l(!1),"aria-hidden":"true"}):null,(0,b.jsxs)("div",{"data-testid":"floating-action-button",className:(0,j.cn)("relative z-50",c),style:d,children:[(0,b.jsx)("div",{className:(0,j.cn)("absolute start-0 bottom-[calc(100%+24px)] flex flex-col items-start gap-2",!g&&"pointer-events-none"),"data-testid":"fab-actions",children:a.map((c,d)=>{let e=(a.length-1-d)*50;return(0,b.jsxs)("button",{"data-testid":`fab-action-${c.id}`,"aria-label":c.label,disabled:c.disabled??c.loading,className:(0,j.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",g?"translate-y-0 opacity-100":"pointer-events-none translate-y-0 opacity-0"),style:{transition:`opacity ${g?250:120}ms ease-out ${g?e:0}ms, transform ${g?250:120}ms ease-out ${g?e:0}ms`},onClick:()=>{c.onClick(),l(!1)},children:[(0,b.jsx)("span",{className:"flex h-5 w-5 shrink-0 items-center justify-center",children:c.loading?(0,b.jsx)(R.Loader2,{className:"h-4 w-4 animate-spin"}):c.icon}),(0,b.jsx)("span",{children:c.label})]},c.id)})}),(0,b.jsxs)(k.Button,{size:"icon","data-testid":"fab-trigger","aria-label":f(g?"fab.closeActions":"fab.createNew"),className:(0,j.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:()=>l(a=>!a),children:[(0,b.jsx)(h.Plus,{className:(0,j.cn)("absolute h-7 w-7 stroke-[2.5] transition-all",g?"scale-0 rotate-90 opacity-0":"scale-100 rotate-0 opacity-100"),style:{transitionDuration:"250ms"}}),(0,b.jsx)(aq.X,{className:(0,j.cn)("absolute h-6 w-6 stroke-[2.5] transition-all",g?"scale-100 rotate-0 opacity-100":"scale-0 -rotate-90 opacity-0"),style:{transitionDuration:"250ms"}})]})]})]})}var as=a.i(1356),at=a.i(19884),au=a.i(96213);let av="shep-canvas-viewport",aw={x:30,y:30,zoom:.85};var ax=a.i(55003),ay=a.i(48265),az=a.i(93967),aA=a.i(32791),aB=a.i(3942),aC=a.i(69428),aD=a.i(71716),aE=a.i(25674);let aF=(0,aE.createServerReference)("403fbb28c13795acda94d00d80fca36290fbb3d9c4",aE.callServer,void 0,aE.findSourceMapURL,"createProjectAndFeature"),aG=(0,aE.createServerReference)("40b9d57439db23ee8fffe27f9307cddf7e203b1f95",aE.callServer,void 0,aE.findSourceMapURL,"createApplication");var aH=a.i(61781);a.i(307);var aI=a.i(30931);a.i(48822);var aJ=a.i(16911),aK=a.i(9260);let aL=["application","fast","spec"],aM={application:{icon:Q.LayoutGrid,label:"Application",placeholder:"Build a modern e-commerce storefront with product catalog...",suggestions:["A landing page with hero, features, and pricing sections","Full-stack SaaS app with auth, billing, and dashboard","Mobile-first social media app with real-time chat","Personal portfolio with blog and project showcase"]},fast:{icon:aB.Zap,label:"Fast",placeholder:"Add a dark mode toggle to the settings page...",suggestions:["Add pagination to the users list endpoint","Fix the broken logout redirect","Add input validation to the signup form","Refactor the API error handling middleware"]},spec:{icon:aC.ClipboardList,label:"Spec Driven",placeholder:"Implement a role-based access control system with audit logging...",suggestions:["OAuth2 authentication with SSO and MFA support","Event-driven notification system with email and push","REST API with versioning, rate limiting, and OpenAPI docs","Data pipeline with ETL, validation, and monitoring"]}};function aN({onRepositorySelect:a,onApplicationCreated:c,onClose:d,className:f}){let{t:g}=(0,i.useTranslation)("web"),[h,k]=(0,e.useState)(""),[l,m]=(0,e.useState)(void 0),[n,o]=(0,e.useState)(void 0),[p,q]=(0,e.useState)("application"),[r,s]=(0,e.useState)(!1),[t,u]=(0,e.useState)(null),[v,w]=(0,e.useState)(!1),x=(0,e.useRef)(null),y=(0,aK.useAttachments)(),z=(0,e.useCallback)(()=>{q(a=>{let b=aL.indexOf(a);return aL[(b+1)%aL.length]})},[]);(0,e.useEffect)(()=>{let a=a=>{"Escape"===a.key&&d&&d(),"Tab"===a.key&&a.shiftKey&&(a.preventDefault(),z())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[d,z]);let A=(0,e.useCallback)(async()=>{if(h.trim()&&!r){s(!0),u(null);try{if("application"===p){let a=await aG({description:h.trim(),agentType:l,modelOverride:n,initialPrompt:h.trim()});if(a.error){u(a.error),s(!1);return}a.application&&c?.(a.application.id)}else{let b=await aF({description:h.trim(),attachments:y.completedAttachments.map(a=>({path:a.path,name:a.name,notes:a.notes})),agentType:l,model:n,fast:"fast"===p});if(b.error){u(b.error),s(!1);return}b.repositoryPath&&a?.(b.repositoryPath),b.feature&&b.repositoryPath&&window.dispatchEvent(new CustomEvent("shep:feature-created",{detail:{featureId:b.feature.id,name:b.feature.name,description:b.feature.description,repositoryPath:b.repositoryPath}}))}}catch{u("Something went wrong. Please try again."),s(!1)}}},[h,r,p,y.completedAttachments,l,n,a,c]),B=(0,e.useCallback)(a=>{"Enter"===a.key&&(a.ctrlKey||a.metaKey)&&(a.preventDefault(),A())},[A]),C=(0,e.useCallback)(async()=>{try{let a=await fetch("/api/dialog/pick-files");if(!a.ok)return;let b=await a.json();if(!b.paths?.length)return;for(let a of b.paths){let b=await fetch("/api/attachments/upload-from-path",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a,sessionId:"onboarding"})});if(!b.ok)continue;let c=await b.json();y.addAttachment(c)}}catch{}},[y.addAttachment]),D=(0,e.useCallback)(a=>{k(a),x.current?.focus()},[]),E=aM[p],F=E.icon;return(0,b.jsxs)("div",{"data-testid":"control-center-empty-state",className:(0,j.cn)("relative flex h-full w-full flex-col items-center justify-center overflow-hidden px-8",f),children:[(0,b.jsx)("div",{className:"onboard-bg pointer-events-none absolute inset-0 animate-[onboard-fade-in_1.2s_ease-out_both]"}),d?(0,b.jsx)("button",{type:"button",onClick:d,"aria-label":"Close",className:"text-muted-foreground hover:text-foreground hover:bg-accent/50 absolute top-4 right-4 z-10 cursor-pointer rounded p-1.5 transition-colors",children:(0,b.jsx)(aq.X,{className:"h-5 w-5"})}):null,(0,b.jsxs)("div",{className:"relative flex w-full max-w-2xl flex-col items-center",children:[(0,b.jsx)("div",{className:"mb-6 animate-[onboard-logo_0.8s_cubic-bezier(0.16,1,0.3,1)_both]",style:{animationDelay:"0ms"},children:(0,b.jsx)(aJ.ShepLogo,{size:72,className:"text-foreground"})}),(0,b.jsx)("h1",{className:"text-foreground animate-[onboard-fade-up_0.7s_cubic-bezier(0.16,1,0.3,1)_both] text-center text-5xl font-extralight tracking-tight",style:{animationDelay:"120ms"},children:"What do you want to build?"}),(0,b.jsx)("p",{className:"text-muted-foreground mt-3 animate-[onboard-fade-up_0.7s_cubic-bezier(0.16,1,0.3,1)_both] text-center text-lg leading-relaxed font-light",style:{animationDelay:"220ms"},children:"Describe your idea and Shep creates the project for you."}),(0,b.jsxs)("div",{className:"mt-10 w-full animate-[onboard-fade-up_0.7s_cubic-bezier(0.16,1,0.3,1)_both]",style:{animationDelay:"350ms"},children:[(0,b.jsxs)("div",{onFocus:()=>w(!0),onBlur:()=>w(!1),onDragEnter:y.handleDragEnter,onDragLeave:y.handleDragLeave,onDragOver:y.handleDragOver,onDrop:y.handleDrop,className:(0,j.cn)("flex flex-col rounded-xl border transition-all duration-200","border-border/60 bg-background shadow-sm dark:border-white/10 dark:bg-white/[0.04]",v&&"ring-ring/50 border-ring shadow-md ring-[3px] dark:border-orange-500/40 dark:ring-orange-500/25",y.isDragOver&&"border-primary/50 bg-primary/5",r&&"opacity-70"),children:[(0,b.jsx)("textarea",{ref:x,rows:2,autoFocus:!0,value:h,onChange:a=>k(a.target.value),onKeyDown:B,onPaste:y.handlePaste,placeholder:E.placeholder,disabled:r,className:"text-foreground placeholder:text-muted-foreground/60 max-h-[10rem] min-h-[4.5rem] w-full resize-none border-0 bg-transparent px-4 py-3.5 text-sm leading-relaxed focus:outline-none disabled:cursor-not-allowed"}),y.attachments.length>0?(0,b.jsx)("div",{className:"flex shrink-0 items-center gap-2.5 overflow-x-auto overflow-y-visible px-5 pt-2 pb-2",children:y.attachments.map(a=>(0,b.jsx)(aI.AttachmentChip,{name:a.name,size:a.size,mimeType:a.mimeType,path:a.path,onRemove:()=>y.removeAttachment(a.id),loading:a.loading,notes:a.notes,onNotesChange:b=>y.updateNotes(a.id,b)},a.id))}):null,y.uploadError?(0,b.jsx)("p",{className:"text-destructive px-4 pb-2 text-xs",children:y.uploadError}):null,(0,b.jsxs)("div",{className:"border-border/60 flex shrink-0 items-center gap-3 border-t px-3 py-2 dark:border-white/10",children:[(0,b.jsx)(aH.AgentModelPicker,{initialAgentType:l??"claude-code",initialModel:n??"claude-sonnet-4-6",mode:"override",showInstallStatus:!0,onAgentModelChange:(a,b)=>{m(a),o(b)},className:"w-55"}),(0,b.jsx)("div",{className:"flex-1"}),(0,b.jsxs)(ah.DropdownMenu,{children:[(0,b.jsx)(ah.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsxs)("button",{type:"button","data-testid":"build-mode-selector",className:"text-muted-foreground hover:text-foreground hover:bg-accent/50 flex cursor-pointer items-center gap-1.5 rounded-md px-2 py-1 text-xs transition-colors",children:[(0,b.jsxs)("span",{className:"flex animate-[onboard-fade-up_0.25s_ease-out_both] items-center gap-1.5",children:[(0,b.jsx)(F,{className:"h-3.5 w-3.5"}),E.label]},p),(0,b.jsx)(aD.ChevronDown,{className:"h-3 w-3 opacity-50"})]})}),(0,b.jsx)(ah.DropdownMenuContent,{align:"end",className:"min-w-[160px]",children:aL.map(a=>{let c=aM[a],d=c.icon,e=p===a;return(0,b.jsxs)(ah.DropdownMenuItem,{onClick:()=>q(a),"data-testid":`build-mode-${a}`,className:"flex items-center gap-2",children:[(0,b.jsx)(d,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{className:"flex-1",children:c.label}),e?(0,b.jsx)(ae.Check,{className:"text-foreground h-3.5 w-3.5"}):null]},a)})})]}),(0,b.jsxs)(H.Tooltip,{children:[(0,b.jsx)(H.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",onClick:C,disabled:r,"aria-label":g("chat.attachFiles"),className:"text-muted-foreground hover:text-foreground cursor-pointer rounded p-1 transition-colors disabled:opacity-50",children:(0,b.jsx)(aA.Paperclip,{className:"h-4 w-4"})})}),(0,b.jsx)(H.TooltipContent,{side:"top",children:g("chat.attachFiles")})]}),(0,b.jsx)("button",{type:"button",onClick:A,disabled:!h.trim()||r,className:(0,j.cn)("bg-foreground text-background inline-flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center rounded-lg","hover:bg-foreground/90 disabled:pointer-events-none disabled:opacity-30","transition-all duration-150"),children:r?(0,b.jsx)(R.Loader2,{className:"h-3.5 w-3.5 animate-spin"}):(0,b.jsx)(az.SendHorizontal,{className:"h-3.5 w-3.5"})})]})]}),t?(0,b.jsx)("p",{className:"text-destructive mt-2 text-center text-sm",children:t}):null]}),(0,b.jsx)("div",{className:"mt-6 flex animate-[onboard-fade-up_0.4s_ease-out_both] flex-wrap justify-center gap-2",children:E.suggestions.map(a=>(0,b.jsx)("button",{type:"button",onClick:()=>D(a),disabled:r,className:"text-muted-foreground hover:text-foreground border-border/60 hover:border-border hover:bg-accent/50 cursor-pointer rounded-full border px-3.5 py-1.5 text-xs transition-all duration-150 disabled:opacity-50 dark:border-white/10 dark:hover:border-white/20 dark:hover:bg-white/[0.06]",children:a},a))},p)]})]})}let aO=(0,aE.createServerReference)("40a6376439dd2da25ab983e84a2e327778f8f453f4",aE.callServer,void 0,aE.findSourceMapURL,"createProjectFolder");function aP({open:a,onOpenChange:c,onCreated:d}){let[f,g]=(0,e.useState)(""),[h,i]=(0,e.useState)(!1),[j,l]=(0,e.useState)(null);(0,e.useEffect)(()=>{a&&(g(""),i(!1),l(null))},[a]);let m=async a=>{a.preventDefault();let b=f.trim();if(!b||h)return;i(!0),l(null);let e=await aO(b);if(!e.ok||!e.path){l(e.error??"Failed to create project."),i(!1);return}d(e.path),c(!1)};return(0,b.jsx)(E.Dialog,{open:a,onOpenChange:c,children:(0,b.jsx)(E.DialogContent,{className:"max-w-sm",children:(0,b.jsxs)("form",{onSubmit:m,children:[(0,b.jsxs)(E.DialogHeader,{children:[(0,b.jsx)(E.DialogTitle,{children:"New project"}),(0,b.jsx)(E.DialogDescription,{children:"Create an empty project folder inside your Shep home directory. Git will be initialised automatically when the project is added."})]}),(0,b.jsxs)("div",{className:"py-4",children:[(0,b.jsx)(an.Input,{autoFocus:!0,value:f,onChange:a=>{g(a.target.value),j&&l(null)},placeholder:"my-prototype",disabled:h,"data-testid":"new-project-name-input"}),j?(0,b.jsx)("p",{className:"text-destructive mt-2 text-xs",role:"alert",children:j}):null]}),(0,b.jsxs)(E.DialogFooter,{children:[(0,b.jsx)(k.Button,{type:"button",variant:"ghost",onClick:()=>c(!1),disabled:h,children:"Cancel"}),(0,b.jsx)(k.Button,{type:"submit",disabled:!f.trim()||h,children:h?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(R.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),"Creating…"]}):"Create project"})]})]})})})}var aQ=a.i(16533);let aR={maxZoom:1,padding:.5,duration:500},aS={maxZoom:1,padding:.5,duration:500};function aT({initialNodes:a,initialEdges:d}){let j,l,m,n,o,q,r=(0,f.useRouter)(),t=(0,f.usePathname)(),u=(j=(0,f.usePathname)().match(/^\/feature\/([^/]+)/),j?.[1]??null),v=(l=(0,f.usePathname)(),m=(0,f.useSearchParams)(),n=l.match(/^\/repository\/([^/]+)/),{id:n?.[1]??null,path:l.startsWith("/create")?m.get("repo"):null}),x=(0,at.useSoundAction)("click"),{guardedNavigate:y}=(0,au.useDrawerCloseGuard)(),{fitView:z}=(0,c.useReactFlow)(),A=(0,e.useRef)(null),{defaultViewport:B,onMoveEnd:C,resetViewport:D}=(o=(0,e.useRef)(function(){try{let a=localStorage.getItem(av);if(null==a)return aw;let b=JSON.parse(a);return!(null==b||"object"!=typeof b||Array.isArray(b))&&"number"==typeof b.x&&"number"==typeof b.y&&"number"==typeof b.zoom&&Number.isFinite(b.x)&&Number.isFinite(b.y)&&Number.isFinite(b.zoom)&&b.zoom>0?b:aw}catch{return aw}}()).current,q=(0,e.useRef)(null),(0,e.useEffect)(()=>()=>{null!=q.current&&clearTimeout(q.current)},[]),{defaultViewport:o,onMoveEnd:(0,e.useCallback)(a=>{null!=q.current&&clearTimeout(q.current),q.current=setTimeout(()=>{try{localStorage.setItem(av,JSON.stringify(a))}catch{}},500)},[]),resetViewport:(0,e.useCallback)(()=>{try{localStorage.removeItem(av)}catch{}return aw},[])}),{nodes:E,edges:F,onNodesChange:G,handleConnect:H,handleAddRepository:I,handleArchiveFeature:K,handleDeleteFeature:L,handleRetryFeature:M,handleStartFeature:N,handleStopFeature:O,handleUnarchiveFeature:P,handleDeleteRepository:R,handleDeleteApplication:S,createFeatureNode:T,showArchived:U,setShowArchived:V,setCallbacks:W}=(0,aQ.useControlCenterState)(a,d),{workspaces:Y,activeWorkspace:Z,isDefaultActive:$,setActiveWorkspace:_,createWorkspace:aa,renameWorkspace:ac,deleteWorkspace:ae,setWorkspaceMembers:af,addToActiveWorkspace:ag}=function(){let[a,b]=(0,e.useState)(aj);(0,e.useEffect)(()=>{b(aj)},[]),(0,e.useEffect)(()=>{},[a]);let c=(0,e.useCallback)(a=>{b(b=>b.workspaces.some(b=>b.id===a)?{...b,activeWorkspaceId:a}:b)},[]),d=(0,e.useCallback)(a=>{let c=a.trim()||"Untitled workspace",d={id:`ws-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,name:c,repoIds:[],featureIds:[]};return b(a=>({workspaces:[...a.workspaces,d],activeWorkspaceId:d.id})),d},[]),f=(0,e.useCallback)((a,c)=>{if(a===ai)return;let d=c.trim();d&&b(b=>({...b,workspaces:b.workspaces.map(b=>b.id===a?{...b,name:d}:b)}))},[]),g=(0,e.useCallback)(a=>{a!==ai&&b(b=>({workspaces:b.workspaces.filter(b=>b.id!==a),activeWorkspaceId:b.activeWorkspaceId===a?ai:b.activeWorkspaceId}))},[]),h=(0,e.useCallback)((a,c)=>{a!==ai&&b(b=>({...b,workspaces:b.workspaces.map(b=>b.id===a?{...b,repoIds:[...c.repoIds],featureIds:[...c.featureIds]}:b)}))},[]),i=(0,e.useCallback)((a,c)=>{b(b=>b.activeWorkspaceId===ai?b:{...b,workspaces:b.workspaces.map(d=>{if(d.id!==b.activeWorkspaceId)return d;let e="repo"===a?d.repoIds:d.featureIds,f=e.includes(c)?e.filter(a=>a!==c):[...e,c];return"repo"===a?{...d,repoIds:f}:{...d,featureIds:f}})})},[]),j=(0,e.useCallback)(a=>i("repo",a),[i]),k=(0,e.useCallback)(a=>i("feature",a),[i]),l=(0,e.useCallback)(a=>{let c=a.repoIds??[],d=a.featureIds??[];(0!==c.length||0!==d.length)&&b(a=>a.activeWorkspaceId===ai?a:{...a,workspaces:a.workspaces.map(b=>{if(b.id!==a.activeWorkspaceId)return b;let e=new Set(b.repoIds);for(let a of c)e.add(a);let f=new Set(b.featureIds);for(let a of d)f.add(a);return e.size===b.repoIds.length&&f.size===b.featureIds.length?b:{...b,repoIds:Array.from(e),featureIds:Array.from(f)}})})},[]),m=a.workspaces.find(b=>b.id===a.activeWorkspaceId)??a.workspaces[0];return{workspaces:a.workspaces,activeWorkspace:m,activeWorkspaceId:a.activeWorkspaceId,isDefaultActive:a.activeWorkspaceId===ai,setActiveWorkspace:c,createWorkspace:d,renameWorkspace:f,deleteWorkspace:g,setWorkspaceMembers:h,toggleRepoInActive:j,toggleFeatureInActive:k,addToActiveWorkspace:l}}(),ah=(0,e.useRef)(new Set),[an,aq]=(0,e.useState)(!1),[ar,ax]=(0,e.useState)(!1),[ay,az]=(0,e.useState)(!1),[aA,aB]=(0,e.useState)(!1),[aC,aD]=(0,e.useState)(null),[aE,aF]=(0,e.useState)(!1),{setFeatures:aG,setHasRepositories:aH}=(0,as.useSidebarFeaturesContext)(),aI=(0,e.useMemo)(()=>E.filter(a=>"featureNode"===a.type),[E]),aJ=(0,e.useMemo)(()=>aI.map(a=>{let b=a.data;return`${b.featureId}:${b.state}:${b.name}:${b.repositoryPath}`}).sort().join(","),[aI]);(0,e.useEffect)(()=>{aG(aI.map(a=>{let b=a.data,c=(0,as.mapNodeStateToSidebarStatus)(b.state);if(!c)return null;let d=b.repositoryPath??"";return{featureId:b.featureId,name:b.name,status:c,repositoryPath:d,repositoryName:b.repositoryName??d.split("/").filter(Boolean).pop()??d,...null!=b.startedAt&&{startedAt:b.startedAt},...null!=b.runtime&&{duration:b.runtime},...b.agentType&&{agentType:b.agentType},...b.modelId&&{modelId:b.modelId}}}).filter(Boolean))},[aJ,aI,aG]);let aK=(0,e.useCallback)(a=>{y(()=>r.push(`/application/${a}`))},[r,y]),aL=(0,e.useCallback)((a,b)=>{if("featureNode"===b.type){let c=b.data;"creating"!==c.state&&"deleting"!==c.state&&a.target.closest('[data-testid="feature-node-card"]')&&y(()=>{x.play(),r.push(`/feature/${c.featureId}`)})}},[r,x,y]),aM=(0,e.useCallback)(()=>{x.play(),r.push("/create")},[r,x]),aO=(0,e.useCallback)(a=>{x.play();let b=E.find(b=>b.id===a),c=b?.data?.repositoryPath;c?r.push(`/create?repo=${encodeURIComponent(c)}`):r.push("/create")},[E,r,x]),aT=(0,e.useCallback)(a=>{let b=a.startsWith("feat-")?a.slice(5):a,c=F.find(b=>b.target===a),d=c?E.find(a=>a.id===c.source):null,e=d?.data?.repositoryPath;x.play();let f=new URLSearchParams;e&&f.set("repo",e),f.set("parent",b),r.push(`/create?${f.toString()}`)},[E,F,r,x]),aV=(0,e.useCallback)(a=>{let b=E.find(b=>b.id===a);if(b?.type==="repositoryNode"){let a=b.data;a.id&&y(()=>r.push(`/repository/${a.id}`))}},[E,r,y]),aW=(0,e.useCallback)(()=>{"/"!==t&&y(()=>r.push("/"))},[r,t,y]),aX=(0,e.useCallback)(a=>{setTimeout(()=>{z(aS),A.current=setTimeout(()=>{y(()=>r.push(`/create?repo=${encodeURIComponent(a)}`))},600)},0)},[z,y,r]),aY=(0,e.useCallback)(a=>{setTimeout(()=>{z({nodes:[{id:a}],maxZoom:1,padding:.4,duration:600})},0)},[z]),aZ=(0,e.useCallback)(a=>{let{wasEmpty:b,repoPath:c,tempNodeId:d}=I(a);b?aX(c):aY(d)},[I,aX,aY]);!function(a){let{addRepoAndFocus:b,createFeatureNode:c,nodes:d,handleDeleteFeature:f,handleArchiveFeature:g,handleUnarchiveFeature:h}=a;(0,e.useEffect)(()=>{let a=a=>{b(a.detail.path)};return window.addEventListener("shep:add-repository",a),()=>window.removeEventListener("shep:add-repository",a)},[b]),(0,e.useEffect)(()=>{let a=a=>{let b=a.detail;if(b.parentId)return void c(`feat-${b.parentId}`,{state:"creating",featureId:b.featureId,name:b.name,description:b.description,repositoryPath:b.repositoryPath},"dependencyEdge");let e=d.find(a=>"repositoryNode"===a.type&&a.data.repositoryPath===b.repositoryPath);c(e?.id??null,{state:"running",featureId:b.featureId,name:b.name,description:b.description,repositoryPath:b.repositoryPath})};return window.addEventListener("shep:feature-created",a),()=>window.removeEventListener("shep:feature-created",a)},[d,c]),(0,e.useEffect)(()=>{let a=a=>{let{featureId:b,cleanup:c,cascadeDelete:d,closePr:e}=a.detail;f(b,c,d,e)};return window.addEventListener("shep:feature-delete-requested",a),()=>window.removeEventListener("shep:feature-delete-requested",a)},[f]),(0,e.useEffect)(()=>{let a=a=>{let{featureId:b}=a.detail;g(b)};return window.addEventListener("shep:feature-archive-requested",a),()=>window.removeEventListener("shep:feature-archive-requested",a)},[g]),(0,e.useEffect)(()=>{let a=a=>{let{featureId:b}=a.detail;h(b)};return window.addEventListener("shep:feature-unarchive-requested",a),()=>window.removeEventListener("shep:feature-unarchive-requested",a)},[h])}({addRepoAndFocus:aZ,createFeatureNode:T,nodes:E,handleDeleteFeature:L,handleArchiveFeature:K,handleUnarchiveFeature:P}),(0,e.useEffect)(()=>()=>{null!=A.current&&clearTimeout(A.current)},[]),(0,e.useEffect)(()=>{W({onNodeAction:aT,onFeatureDelete:L,onRetryFeature:M,onStartFeature:N,onStopFeature:O,onArchiveFeature:K,onUnarchiveFeature:P,onRepositoryAdd:aO,onRepositoryClick:aV,onRepositoryDelete:R,onApplicationClick:aK,onApplicationDelete:S})},[W,aT,K,L,M,N,O,P,aO,aV,R,aK,S]);let a$=(0,e.useCallback)((a,b)=>{C(b)},[C]),a_=E.some(a=>"repositoryNode"===a.type),a0=a_||E.some(a=>"applicationNode"===a.type);(0,e.useEffect)(()=>{aH(a_)},[a_,aH]);let[a1,a2]=(0,e.useState)(a0),a3=(0,e.useRef)(null);(0,e.useEffect)(()=>(a0?(a3.current&&(clearTimeout(a3.current),a3.current=null),a2(!0)):a1&&(D(),a3.current=setTimeout(()=>{a2(!1),a3.current=null},500)),()=>{a3.current&&clearTimeout(a3.current)}),[a0,a1,D]),(0,e.useEffect)(()=>{let a=ah.current,b=[],c=[];for(let d of E)a.has(d.id)||(a.add(d.id),"repositoryNode"===d.type?b.push(d.id):"featureNode"===d.type&&c.push(d.id));$||(0!==b.length||0!==c.length)&&ag({repoIds:b,featureIds:c})},[E,$,ag]);let a4=(0,e.useMemo)(()=>{if($)return E;let a=new Set(Z.repoIds),b=new Set(Z.featureIds);return E.filter(c=>"repositoryNode"===c.type?a.has(c.id):"featureNode"!==c.type||b.has(c.id))},[E,$,Z]),a5=(0,e.useMemo)(()=>{if($)return F;let a=new Set(a4.map(a=>a.id));return F.filter(b=>a.has(b.source)&&a.has(b.target))},[F,$,a4]),a6=t.startsWith("/create"),a7=(0,e.useMemo)(()=>{let a=a4.filter(a=>"repositoryNode"===a.type),b=a4.some(a=>"featureNode"===a.type);return 1!==a.length||b||a6?a4:a4.map(a=>"repositoryNode"===a.type?{...a,data:{...a.data,pulseAdd:!0}}:a)},[a4,a6]),a8=(0,e.useCallback)(()=>{window.dispatchEvent(new CustomEvent("shep:pick-folder"))},[]);!function(a){let{activeWorkspace:b,isDefaultActive:c,workspaceFilteredNodes:d,fitView:f}=a,g=(0,e.useMemo)(()=>{if(c)return"default";let a=d.map(a=>a.id).sort().join(",");return`${b.id}:${a}`},[c,b.id,d]),h=(0,e.useRef)(null);(0,e.useEffect)(()=>{let a=h.current;if(h.current=g,null===a||a===g||c||0===d.length)return;let b=setTimeout(()=>{f(aR)},0);return()=>clearTimeout(b)},[g,c,d.length,f])}({activeWorkspace:Z,isDefaultActive:$,workspaceFilteredNodes:a4,fitView:z});let a9=a0&&!$&&0===a4.length?(0,b.jsxs)("div",{className:"pointer-events-auto flex h-full w-full flex-col items-center justify-center px-8",children:[(0,b.jsx)("div",{className:"bg-primary/10 text-primary mb-5 flex h-12 w-12 items-center justify-center rounded-2xl",children:(0,b.jsx)(ad.Layers,{className:"h-6 w-6"})}),(0,b.jsx)("h2",{className:"text-foreground/90 text-center text-2xl font-light tracking-tight",children:"This workspace is empty"}),(0,b.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,b.jsxs)("div",{className:"mt-6 flex items-center gap-2",children:[(0,b.jsxs)(k.Button,{size:"sm",onClick:()=>aF(!0),className:"bg-blue-500 text-white hover:bg-blue-600",children:[(0,b.jsx)(g.FolderPlus,{className:"me-1.5 h-3.5 w-3.5"}),"New project"]}),(0,b.jsxs)(k.Button,{variant:"outline",size:"sm",onClick:()=>aq(!0),children:[(0,b.jsx)(h.Plus,{className:"me-1.5 h-3.5 w-3.5"}),"Manage items"]}),(0,b.jsx)(k.Button,{variant:"ghost",size:"sm",onClick:()=>_(ai),children:"Switch to Default"})]})]}):(0,b.jsx)(aN,{onRepositorySelect:aZ,onApplicationCreated:a=>{r.push(`/application/${a}`)}}),[ba,bb]=(0,e.useState)(!1),bc=function({router:a,clickSound:c,guardedNavigate:d,handlePickFolder:f,onNewProject:h,onNewApplication:j,featureFlags:k}){let{t:l}=(0,i.useTranslation)("web");return(0,e.useMemo)(()=>{let e=[{id:"new-project",label:"New project",icon:(0,b.jsx)(g.FolderPlus,{className:"h-4 w-4"}),onClick:()=>{c.play(),h()}},{id:"new-feature",label:l("fab.newFeature"),icon:(0,b.jsx)(al.Sparkles,{className:"h-4 w-4"}),onClick:()=>{c.play(),d(()=>a.push("/create"))}},{id:"add-local-repo",label:l("fab.localFolder"),icon:(0,b.jsx)(s.FolderOpen,{className:"h-4 w-4"}),onClick:f},{id:"new-application",label:l("fab.newApplication"),icon:(0,b.jsx)(Q.LayoutGrid,{className:"h-4 w-4"}),onClick:j}];return k.adoptBranch&&e.push({id:"adopt-branch",label:l("fab.adoptBranch"),icon:(0,b.jsx)(w.GitBranch,{className:"h-4 w-4"}),onClick:()=>{d(()=>a.push("/adopt"))}}),k.githubImport&&e.push({id:"add-github-repo",label:l("fab.fromGithub"),icon:(0,b.jsx)(p,{className:"h-4 w-4"}),onClick:()=>{window.dispatchEvent(new CustomEvent("shep:open-github-import"))}}),e},[l,c,d,a,f,h,j,k.adoptBranch,k.githubImport])}({router:r,clickSound:x,guardedNavigate:y,handlePickFolder:a8,onNewProject:()=>aF(!0),onNewApplication:()=>bb(!0),featureFlags:(0,J.useFeatureFlags)()}),bd=(0,b.jsx)(ab,{showArchived:U,onToggleArchived:()=>V(!U),onResetViewport:D,startSlot:(0,b.jsx)(ak,{workspaces:Y,activeWorkspace:Z,onSelect:_,onRequestCreate:()=>ax(!0),onRequestRename:()=>az(!0),onRequestDelete:a=>{aD(a),aB(!0)},onManage:()=>aq(!0)})});return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(X,{nodes:a1?a7:[],edges:a1?a5:[],selectedFeatureId:u,selectedRepository:v,defaultViewport:B,onNodesChange:G,onConnect:H,onAddFeature:aM,onNodeClick:aL,onPaneClick:aW,onMoveEnd:a$,toolbar:bd,emptyState:a9}),a1?(0,b.jsx)(aU,{actions:bc}):null,(0,b.jsx)(aP,{open:aE,onOpenChange:aF,onCreated:a=>aZ(a)}),(0,b.jsx)(am,{open:an,onOpenChange:aq,workspace:Z,allNodes:E,onSave:a=>af(Z.id,a)}),(0,b.jsx)(ao,{open:ar,onOpenChange:ax,title:"New workspace",description:"Create a workspace to filter the canvas to a specific set of repositories and features.",confirmLabel:"Create",onConfirm:a=>{aa(a),aq(!0)}}),(0,b.jsx)(ao,{open:ay,onOpenChange:az,title:"Rename workspace",initialValue:Z.name,confirmLabel:"Rename",onConfirm:a=>ac(Z.id,a)}),(0,b.jsx)(ap.AlertDialog,{open:aA,onOpenChange:a=>{aB(a),a||aD(null)},children:(0,b.jsxs)(ap.AlertDialogContent,{children:[(0,b.jsxs)(ap.AlertDialogHeader,{children:[(0,b.jsx)(ap.AlertDialogTitle,{children:"Delete workspace?"}),(0,b.jsxs)(ap.AlertDialogDescription,{children:["This will permanently remove the workspace “",Y.find(a=>a.id===aC)?.name??Z.name,"”. The repositories and features themselves are not affected."]})]}),(0,b.jsxs)(ap.AlertDialogFooter,{children:[(0,b.jsx)(ap.AlertDialogCancel,{children:"Cancel"}),(0,b.jsx)(ap.AlertDialogAction,{variant:"destructive",onClick:()=>{aC&&(ae(aC),aD(null))},children:"Delete"})]})]})}),ba?(0,b.jsx)("div",{className:"absolute inset-0 z-50",children:(0,b.jsx)(aN,{onRepositorySelect:a=>{bb(!1),aZ(a)},onApplicationCreated:a=>{bb(!1),r.push(`/application/${a}`)},onClose:()=>bb(!1),className:"bg-background"})}):null]})}function aU({actions:a}){let{state:c}=(0,ax.useSidebar)(),{i18n:d}=(0,i.useTranslation)("web"),{swapPosition:e}=(0,ay.useFabLayout)(),f="rtl"===d.dir();if(e)return(0,b.jsx)(ar,{actions:a,className:"!fixed bottom-6",style:f?{left:"calc(var(--sidebar-width-icon) + 32px)",transition:"left 200ms ease-in-out"}:{right:"32px",transition:"right 200ms ease-in-out"}});let g="expanded"===c?"calc(var(--sidebar-width) + 32px)":"calc(var(--sidebar-width-icon) + 32px)";return(0,b.jsx)(ar,{actions:a,className:"!fixed bottom-6",style:f?{right:g,transition:"right 200ms ease-in-out"}:{left:g,transition:"left 200ms ease-in-out"}})}function aV({initialNodes:a,initialEdges:e,drawer:f}){return(0,b.jsxs)("div",{"data-testid":"control-center",className:"h-full w-full",children:[(0,b.jsx)(d.SessionsProvider,{children:(0,b.jsx)(c.ReactFlowProvider,{children:(0,b.jsx)(aT,{initialNodes:a,initialEdges:e})})}),(0,b.jsx)("div",{children:f},"drawer")]})}a.s(["ControlCenter",()=>aV],59949)}];
2
-
3
- //# sourceMappingURL=src_presentation_web_components_features_control-center_7ac3562e._.js.map