@shepai/cli 1.202.1-pr606.60460ac → 1.202.2
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.
- package/package.json +1 -1
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/build-manifest.json +2 -2
- package/web/.next/fallback-build-manifest.json +2 -2
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/required-server-files.js +2 -2
- package/web/.next/required-server-files.json +2 -2
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +37 -37
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/chat/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +35 -35
- package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +38 -38
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +47 -47
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +47 -47
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +36 -36
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +36 -36
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/chat/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +35 -35
- package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/control-center/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/control-center/page/server-reference-manifest.json +35 -35
- package/web/.next/server/app/(dashboard)/control-center/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/control-center/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/create/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +38 -38
- package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +47 -47
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +47 -47
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +36 -36
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +36 -36
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/server/app/_not-found/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/_not-found/page/server-reference-manifest.json +9 -9
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/agent-questions/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/agent-questions/page/server-reference-manifest.json +11 -11
- package/web/.next/server/app/agent-questions/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/agents/[agentType]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/agents/[agentType]/page/server-reference-manifest.json +13 -13
- package/web/.next/server/app/agents/[agentType]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/agents/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/agents/page/server-reference-manifest.json +10 -10
- package/web/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/application/[id]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/application/[id]/page/server-reference-manifest.json +18 -18
- package/web/.next/server/app/application/[id]/page.js.nft.json +1 -1
- package/web/.next/server/app/application/[id]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/application/[id]/supervisor/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/application/[id]/supervisor/page/server-reference-manifest.json +10 -10
- package/web/.next/server/app/application/[id]/supervisor/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/applications/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/applications/page/server-reference-manifest.json +20 -20
- package/web/.next/server/app/applications/page.js.nft.json +1 -1
- package/web/.next/server/app/applications/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/features/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/features/page/server-reference-manifest.json +31 -31
- package/web/.next/server/app/features/page.js.nft.json +1 -1
- package/web/.next/server/app/features/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/onboarding/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/onboarding/page/server-reference-manifest.json +9 -9
- package/web/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/page/server-reference-manifest.json +9 -9
- package/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/projects/[slug]/items/[itemId]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/projects/[slug]/items/[itemId]/page/server-reference-manifest.json +16 -16
- package/web/.next/server/app/projects/[slug]/items/[itemId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/projects/[slug]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/projects/[slug]/page/server-reference-manifest.json +28 -28
- package/web/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/projects/[slug]/pages/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/projects/[slug]/pages/page/server-reference-manifest.json +12 -12
- package/web/.next/server/app/projects/[slug]/pages/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/projects/[slug]/settings/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/projects/[slug]/settings/page/server-reference-manifest.json +18 -18
- package/web/.next/server/app/projects/[slug]/settings/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/projects/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/projects/page/server-reference-manifest.json +10 -10
- package/web/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/settings/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/settings/page/server-reference-manifest.json +15 -15
- package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/skills/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/skills/page/server-reference-manifest.json +17 -17
- package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/supervisor/feature/[featureId]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/supervisor/feature/[featureId]/page/server-reference-manifest.json +10 -10
- package/web/.next/server/app/supervisor/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/supervisor/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/supervisor/page/server-reference-manifest.json +10 -10
- package/web/.next/server/app/supervisor/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/supervisor/repo/[repositoryId]/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/supervisor/repo/[repositoryId]/page/server-reference-manifest.json +10 -10
- package/web/.next/server/app/supervisor/repo/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/tools/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/tools/page/server-reference-manifest.json +15 -15
- package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/version/page/react-loadable-manifest.json +4 -4
- package/web/.next/server/app/version/page/server-reference-manifest.json +9 -9
- package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__10e976f3._.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agent-questions_page_actions_4b694f8d.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agent-questions_page_actions_4b694f8d.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agents_[agentType]_page_actions_103679a6.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agents_[agentType]_page_actions_103679a6.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_projects_[slug]_pages_page_actions_19d50f6c.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_projects_[slug]_pages_page_actions_19d50f6c.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_items_[itemId]_work-item-detail-client_tsx_d2e02407._.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_items_[itemId]_work-item-detail-client_tsx_d2e02407._.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_settings_project-settings-client_tsx_e8b85ddc._.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_settings_project-settings-client_tsx_e8b85ddc._.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +2 -2
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_features_applications_applications-page-client_tsx_d0db9938._.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_features_applications_applications-page-client_tsx_d0db9938._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0af8610a._.js +3 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0af8610a._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0b652a2f._.js +1 -1
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__8b73253b._.js → [root-of-the-server]__2e388ba3._.js} +2 -2
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__8b73253b._.js.map → [root-of-the-server]__2e388ba3._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__56cf47e7._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__56cf47e7._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__648730d4._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__68df6415._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__68df6415._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6bc6bf96._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6bc6bf96._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__9852cb08._.js +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__9852cb08._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a1167cec._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a1167cec._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__a12d0ad7._.js +3 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__52ca7f88._.js.map → [root-of-the-server]__a12d0ad7._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__ba699bec._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__ba699bec._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e0741ee1._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e0fa59e6._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e0fa59e6._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__ea26ff90._.js +3 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__ff0095e3._.js +1 -1
- package/web/.next/server/chunks/ssr/_07036593._.js +1 -1
- package/web/.next/server/chunks/ssr/_07036593._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_0d2a7595._.js +1 -1
- package/web/.next/server/chunks/ssr/_0d2a7595._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_101de7c3._.js +1 -1
- package/web/.next/server/chunks/ssr/_101de7c3._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_db111d21._.js → _10f54ace._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_db111d21._.js.map → _10f54ace._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_24fca3cf._.js +1 -1
- package/web/.next/server/chunks/ssr/_24fca3cf._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_6ff832ad._.js → _2759af76._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_6ff832ad._.js.map → _2759af76._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_2bc48f3d._.js +1 -1
- package/web/.next/server/chunks/ssr/_2bc48f3d._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_fb539286._.js → _2bef1982._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_fb539286._.js.map → _2bef1982._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_32f66845._.js +1 -1
- package/web/.next/server/chunks/ssr/_408848e6._.js +1 -1
- package/web/.next/server/chunks/ssr/_408848e6._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_40e02782._.js +1 -1
- package/web/.next/server/chunks/ssr/_40e02782._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_486d45d6._.js +1 -1
- package/web/.next/server/chunks/ssr/_486d45d6._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_824d5772._.js → _498cba11._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_824d5772._.js.map → _498cba11._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
- package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_5cbb0e22._.js +1 -1
- package/web/.next/server/chunks/ssr/_5cbb0e22._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_5a3edc88._.js → _673be4f1._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_5a3edc88._.js.map → _673be4f1._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_7ba67729._.js +1 -1
- package/web/.next/server/chunks/ssr/_7ba67729._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_805ae1aa._.js +1 -1
- package/web/.next/server/chunks/ssr/_805ae1aa._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_87cf18c3._.js +1 -1
- package/web/.next/server/chunks/ssr/_87cf18c3._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_8a700ff4._.js +1 -1
- package/web/.next/server/chunks/ssr/_8a700ff4._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_95b97274._.js +1 -1
- package/web/.next/server/chunks/ssr/_95b97274._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_fbcfaf3a._.js → _9d18d1b1._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_fbcfaf3a._.js.map → _9d18d1b1._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/{_70ff64a1._.js → _a93687e6._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_70ff64a1._.js.map → _a93687e6._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_c2e196ee._.js +1 -1
- package/web/.next/server/chunks/ssr/_c2e196ee._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_ca3b7bf7._.js +1 -1
- package/web/.next/server/chunks/ssr/_ca3b7bf7._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_d53224a9._.js +1 -1
- package/web/.next/server/chunks/ssr/_d53224a9._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_d573dcc2._.js +1 -1
- package/web/.next/server/chunks/ssr/_e2671e14._.js +1 -1
- package/web/.next/server/chunks/ssr/_e2671e14._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_ecd45b17._.js +1 -1
- package/web/.next/server/chunks/ssr/_ecd45b17._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_f0d45e47._.js → _f46d2018._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_f0d45e47._.js.map → _f46d2018._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_f602cc9f._.js +1 -1
- package/web/.next/server/chunks/ssr/_f602cc9f._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_20a56008._.js → _f71954a5._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_20a56008._.js.map → _f71954a5._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
- package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_0e291f0b._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_0e291f0b._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{src_presentation_web_40673f0c._.js → src_presentation_web_16c83ab4._.js} +2 -2
- package/web/.next/server/chunks/ssr/{src_presentation_web_40673f0c._.js.map → src_presentation_web_16c83ab4._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_1d8d177f._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_1d8d177f._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_450b58fc._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_450b58fc._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_47727150._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_47727150._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_64fcfc84._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_64fcfc84._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_74b7bdb2._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_74b7bdb2._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_82aeca34._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_82aeca34._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_8a564d47._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_8a564d47._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app__not-found_page_actions_f4f3fad9.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app__not-found_page_actions_f4f3fad9.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_agents_page_actions_d4bd4711.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_agents_page_actions_d4bd4711.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_onboarding_page_actions_bb695e8d.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_onboarding_page_actions_bb695e8d.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_page_actions_ac47e420.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_page_actions_ac47e420.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_projects_page_actions_c91a23a8.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_projects_page_actions_c91a23a8.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_version_page_actions_63c2d912.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_version_page_actions_63c2d912.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_a53a3da6._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_a53a3da6._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_246617fe._.js +3 -3
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_adopt-local-directory_ts_75f1f28c._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_adopt-local-directory_ts_75f1f28c._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_9453ce8b._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-directory_ts_1209d917._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-directory_ts_1209d917._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_app_features_feature-tree-page-client_tsx_34c5cbbf._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_b1b3c26c._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_b1b3c26c._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_b98a4353._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_b98a4353._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_c96ca051._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_c96ca051._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{src_presentation_web_e812a69b._.js → src_presentation_web_cb0d2c28._.js} +2 -2
- package/web/.next/server/chunks/ssr/{src_presentation_web_e812a69b._.js.map → src_presentation_web_cb0d2c28._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_66643378._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_66643378._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_agent-editor_agent-editor-tabs_tsx_d5a954b4._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_agent-editor_agent-editor-tabs_tsx_d5a954b4._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_d3858f16._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_d3858f16._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_d7f8130c._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_d7f8130c._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_dddd8ccd._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_dddd8ccd._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_e13d58b0._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_e13d58b0._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ee94a9aa._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ee94a9aa._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_f0fcfdff._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_f0fcfdff._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_f17e8516._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_f17e8516._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_f7180fec._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_f7180fec._.js.map +1 -1
- package/web/.next/server/pages/500.html +2 -2
- package/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/server/server-reference-manifest.json +111 -111
- package/web/.next/static/chunks/{5faa828877b1e669.js → 03dda23205877d8b.js} +1 -1
- package/web/.next/static/chunks/{4bf4f333302e24a4.js → 054e3a5f5ff4db71.js} +1 -1
- package/web/.next/static/chunks/{a868014dbe1b4e42.js → 06e58041911c290b.js} +1 -1
- package/web/.next/static/chunks/{b5ff852fee23795d.js → 089ef5b749d79ebd.js} +1 -1
- package/web/.next/static/chunks/{1a093b13a9d6952e.js → 0d106010c498c198.js} +2 -2
- package/web/.next/static/chunks/193e5a0540757f5e.js +1 -0
- package/web/.next/static/chunks/{9abc3e68af98e636.js → 25111a2f2597f500.js} +1 -1
- package/web/.next/static/chunks/285e724d07901ef6.js +1 -0
- package/web/.next/static/chunks/{3c396f63ebefe875.js → 2b2bfc0465b18a7d.js} +1 -1
- package/web/.next/static/chunks/{6af99a08ccacdbce.js → 2b436562e69d2827.js} +1 -1
- package/web/.next/static/chunks/{8c96a835b3b0dc44.js → 2e3844d0ac487ac7.js} +1 -1
- package/web/.next/static/chunks/325859b8a9482427.js +1 -0
- package/web/.next/static/chunks/{2773e7b2587bc9cc.js → 44ab458ceb89d85d.js} +1 -1
- package/web/.next/static/chunks/4fdf36904f5421a6.js +1 -0
- package/web/.next/static/chunks/59004c65d552581c.js +1 -0
- package/web/.next/static/chunks/{0edcdc8a2dd06b7a.js → 5c4837e88a3431b8.js} +1 -1
- package/web/.next/static/chunks/{a131f868af7f1f7c.js → 74cdd562eb663f72.js} +1 -1
- package/web/.next/static/chunks/{0315591c972888a6.js → 7670d76d4ee743e6.js} +1 -1
- package/web/.next/static/chunks/{02d88da9fd656fcd.js → 83fc784ce05a701e.js} +1 -1
- package/web/.next/static/chunks/{460cedaa85c821e7.js → 8dd4fdd20b103a66.js} +1 -1
- package/web/.next/static/chunks/9336bdc7fc319282.js +1 -0
- package/web/.next/static/chunks/9d285565922b2de7.js +1 -0
- package/web/.next/static/chunks/{45eeca36eabbed23.js → 9f7f2a11937d87eb.js} +1 -1
- package/web/.next/static/chunks/{c3931fdbae836be6.js → a7c7bcfb6f7696a3.js} +1 -1
- package/web/.next/static/chunks/{9f7985e2a73929a2.js → a8f57d2a12849f32.js} +1 -1
- package/web/.next/static/chunks/{0e1c933065a1100a.js → abe98954ccdf29db.js} +1 -1
- package/web/.next/static/chunks/{4378715fa2b5e7de.js → b05808da85e8b34c.js} +1 -1
- package/web/.next/static/chunks/{b5dc7979d66caa38.js → b5f83e5e1dad23d5.js} +1 -1
- package/web/.next/static/chunks/{6d2074fa3453d333.js → b8293a56f257e5a2.js} +1 -1
- package/web/.next/static/chunks/{bc5b87e4068ba11d.js → c61c5e97c76dc733.js} +1 -1
- package/web/.next/static/chunks/c6b411bf31744ca7.js +1 -0
- package/web/.next/static/chunks/{bdaa907bf3d1d932.js → c732d6cc4c5e4343.js} +1 -1
- package/web/.next/static/chunks/{25a200f055ae5cba.js → d214d6a670f48d79.js} +1 -1
- package/web/.next/static/chunks/{6901861cb53ab483.js → d7b17a93a26e97c8.js} +1 -1
- package/web/.next/static/chunks/{a0325f77bbccc63d.js → d8f14fac959a6bd0.js} +1 -1
- package/web/.next/static/chunks/{24ea54516dc249c0.js → d98912f5b6cf4938.js} +1 -1
- package/web/.next/static/chunks/{21500b3fe3754296.js → df79667c16344317.js} +1 -1
- package/web/.next/static/chunks/{05e8df10619fb980.js → ec8f19328ad1ecd4.js} +1 -1
- package/web/.next/static/chunks/{e6e6ba783b2e4d14.js → f0157331838ac962.js} +1 -1
- package/web/.next/static/chunks/{c687ed21b9518d73.js → f757d865fae71faf.js} +1 -1
- package/web/.next/static/chunks/fb3cbb7f575a7128.js +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__52ca7f88._.js +0 -3
- package/web/.next/static/chunks/03d7b81c2554d52f.js +0 -1
- package/web/.next/static/chunks/15acdaaea57bb459.js +0 -1
- package/web/.next/static/chunks/39fe1c1397d5483b.js +0 -1
- package/web/.next/static/chunks/495883829026f13f.js +0 -1
- package/web/.next/static/chunks/4b3a4f416a6eb1ac.js +0 -1
- package/web/.next/static/chunks/4b4160f36cf2a3d6.js +0 -1
- package/web/.next/static/chunks/7269537b2188650d.js +0 -1
- package/web/.next/static/chunks/b1534b2f3d814fef.js +0 -1
- package/web/.next/static/chunks/f6dc1ba364203bb2.js +0 -1
- /package/web/.next/static/{My4IQDygZ4BFTXkkKanja → 9zd-B2rWybTaAgE74IKiK}/_buildManifest.js +0 -0
- /package/web/.next/static/{My4IQDygZ4BFTXkkKanja → 9zd-B2rWybTaAgE74IKiK}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{My4IQDygZ4BFTXkkKanja → 9zd-B2rWybTaAgE74IKiK}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,853756,e=>{"use strict";let t=(0,e.i(903645).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);e.s(["Sparkles",()=>t],853756)},383379,e=>{"use strict";let t=(0,e.i(903645).default)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);e.s(["ArrowRight",()=>t],383379)},440106,e=>{"use strict";var t=e.i(679606),r=e.i(152155),a=e.i(711719),i=e.i(935946),l=e.i(83428),s=e.i(542049),n=e.i(453360),o=e.i(941698),d=e.i(99105),c=e.i(723925),p=e.i(860253);e.i(541001);var u=e.i(64780),h=e.i(131777),x=e.i(508893);let m=(0,x.createServerReference)("40ba17f62f174f4f88aa0ea4a373db347247ae1171",x.callServer,void 0,x.findSourceMapURL,"createProjectAndFeature"),g=(0,x.createServerReference)("40f744f8f8785a86cc8dc9487da8d64ca353d264af",x.callServer,void 0,x.findSourceMapURL,"createApplication");var f=e.i(283237),b=e.i(41413);e.i(650032);var v=e.i(486254);e.i(692233);var y=e.i(210025),j=e.i(102828),w=e.i(470646),k=e.i(731151);let N=["application","fast","spec"],C={application:{icon:s.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:n.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:o.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 D({onRepositorySelect:e,onApplicationCreated:s,onClose:n,className:o}){let{t:x}=(0,u.useTranslation)("web"),[D,A]=(0,r.useState)(""),[S,P]=(0,r.useState)(void 0),[L,M]=(0,r.useState)(void 0);(0,r.useEffect)(()=>{(0,f.getDefaultAgentAndModel)().then(e=>{P(t=>t??e.agentType),M(t=>t??e.model)})},[]);let[T,R]=(0,r.useState)("application"),[_,E]=(0,r.useState)(!1),[O,I]=(0,r.useState)(null),[z,F]=(0,r.useState)(!1),$=(0,r.useRef)(null),B=(0,k.useAttachments)(),H=!!e,Z=H?T:"application",V=(0,r.useCallback)(()=>{R(e=>{let t=N.indexOf(e);return N[(t+1)%N.length]})},[]);(0,r.useEffect)(()=>{let t=t=>{"Escape"===t.key&&n&&n(),"Tab"===t.key&&t.shiftKey&&e&&(t.preventDefault(),V())};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[n,V,e]);let W=(0,r.useCallback)(async()=>{if(D.trim()&&!_){E(!0),I(null);try{if("application"!==Z&&e){let t=await m({description:D.trim(),attachments:B.completedAttachments.map(e=>({path:e.path,name:e.name,notes:e.notes})),agentType:S,model:L,fast:"fast"===Z});if(t.error){I(t.error),E(!1);return}t.repositoryPath&&e?.(t.repositoryPath),t.feature&&t.repositoryPath&&window.dispatchEvent(new CustomEvent("shep:feature-created",{detail:{featureId:t.feature.id,name:t.feature.name,description:t.feature.description,repositoryPath:t.repositoryPath}}))}else{let e=await g({description:D.trim(),agentType:S,modelOverride:L,initialPrompt:D.trim()});if(e.error){I(e.error),E(!1);return}e.application&&s?.(e.application.id)}}catch{I("Something went wrong. Please try again."),E(!1)}}},[D,_,Z,B.completedAttachments,S,L,e,s]),U=(0,r.useCallback)(e=>{"Enter"===e.key&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),W())},[W]),G=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/dialog/pick-files");if(!e.ok)return;let t=await e.json();if(!t.paths?.length)return;for(let e of t.paths){let t=await fetch("/api/attachments/upload-from-path",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e,sessionId:"onboarding"})});if(!t.ok)continue;let r=await t.json();B.addAttachment(r)}}catch{}},[B.addAttachment]),K=(0,r.useCallback)(e=>{A(e),$.current?.focus()},[]),q=C[Z],Q=q.icon;return(0,t.jsxs)("div",{"data-testid":"control-center-empty-state",className:(0,h.cn)("relative flex h-full w-full flex-col items-center justify-center overflow-hidden px-8",o),children:[(0,t.jsx)("div",{className:"onboard-bg pointer-events-none absolute inset-0 animate-[onboard-fade-in_1.2s_ease-out_both]"}),n?(0,t.jsx)("button",{type:"button",onClick:n,"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,t.jsx)(p.X,{className:"h-5 w-5"})}):null,(0,t.jsxs)("div",{className:"relative flex w-full max-w-2xl flex-col items-center",children:[(0,t.jsx)("div",{className:"mb-6 animate-[onboard-logo_0.8s_cubic-bezier(0.16,1,0.3,1)_both]",style:{animationDelay:"0ms"},children:(0,t.jsx)(y.ShepLogo,{size:72,className:"text-foreground"})}),(0,t.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,t.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,t.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,t.jsxs)("div",{onFocus:()=>F(!0),onBlur:()=>F(!1),onDragEnter:B.handleDragEnter,onDragLeave:B.handleDragLeave,onDragOver:B.handleDragOver,onDrop:B.handleDrop,className:(0,h.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]",z&&"ring-ring/50 border-ring shadow-md ring-[3px] dark:border-orange-500/40 dark:ring-orange-500/25",B.isDragOver&&"border-primary/50 bg-primary/5",_&&"opacity-70"),children:[(0,t.jsx)("textarea",{ref:$,rows:2,autoFocus:!0,value:D,onChange:e=>A(e.target.value),onKeyDown:U,onPaste:B.handlePaste,placeholder:q.placeholder,disabled:_,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"}),B.attachments.length>0?(0,t.jsx)("div",{className:"flex shrink-0 items-center gap-2.5 overflow-x-auto overflow-y-visible px-5 pt-2 pb-2",children:B.attachments.map(e=>(0,t.jsx)(v.AttachmentChip,{name:e.name,size:e.size,mimeType:e.mimeType,path:e.path,onRemove:()=>B.removeAttachment(e.id),loading:e.loading,notes:e.notes,onNotesChange:t=>B.updateNotes(e.id,t)},e.id))}):null,B.uploadError?(0,t.jsx)("p",{className:"text-destructive px-4 pb-2 text-xs",children:B.uploadError}):null,(0,t.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,t.jsx)(b.AgentModelPicker,{initialAgentType:S??"",initialModel:L??"",mode:"override",showInstallStatus:!0,onAgentModelChange:(e,t)=>{P(e),M(t)},className:"w-55"}),(0,t.jsx)("div",{className:"flex-1"}),H?(0,t.jsxs)(w.DropdownMenu,{children:[(0,t.jsx)(w.DropdownMenuTrigger,{asChild:!0,children:(0,t.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,t.jsxs)("span",{className:"flex animate-[onboard-fade-up_0.25s_ease-out_both] items-center gap-1.5",children:[(0,t.jsx)(Q,{className:"h-3.5 w-3.5"}),q.label]},Z),(0,t.jsx)(d.ChevronDown,{className:"h-3 w-3 opacity-50"})]})}),(0,t.jsx)(w.DropdownMenuContent,{align:"end",className:"min-w-[160px]",children:N.map(e=>{let r=C[e],a=r.icon,i=Z===e;return(0,t.jsxs)(w.DropdownMenuItem,{onClick:()=>R(e),"data-testid":`build-mode-${e}`,className:"flex items-center gap-2",children:[(0,t.jsx)(a,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"flex-1",children:r.label}),i?(0,t.jsx)(c.Check,{className:"text-foreground h-3.5 w-3.5"}):null]},e)})})]}):null,(0,t.jsxs)(j.Tooltip,{children:[(0,t.jsx)(j.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",onClick:G,disabled:_,"aria-label":x("chat.attachFiles"),className:"text-muted-foreground hover:text-foreground cursor-pointer rounded p-1 transition-colors disabled:opacity-50",children:(0,t.jsx)(i.Paperclip,{className:"h-4 w-4"})})}),(0,t.jsx)(j.TooltipContent,{side:"top",children:x("chat.attachFiles")})]}),(0,t.jsx)("button",{type:"button",onClick:W,disabled:!D.trim()||_,className:(0,h.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:_?(0,t.jsx)(l.Loader2,{className:"h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(a.SendHorizontal,{className:"h-3.5 w-3.5"})})]})]}),O?(0,t.jsx)("p",{className:"text-destructive mt-2 text-center text-sm",children:O}):null]}),(0,t.jsx)("div",{className:"mt-6 flex animate-[onboard-fade-up_0.4s_ease-out_both] flex-wrap justify-center gap-2",children:q.suggestions.map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>K(e),disabled:_,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:e},e))},Z)]})]})}e.s(["ControlCenterEmptyState",()=>D],440106)},227190,e=>{"use strict";var t=e.i(508893);let r=(0,t.createServerReference)("40af1b8d14947496efa0de09d2e46341cfadd226ac",t.callServer,void 0,t.findSourceMapURL,"deleteApplication");e.s(["deleteApplication",()=>r])},942616,e=>{"use strict";function t(e,t,r,a){return"processing"===t?{label:"In Progress",dotClass:"bg-violet-500",borderClass:"",pulse:!0,previewDisabled:!0}:"awaiting_input"===t?{label:"Action Required",dotClass:"bg-amber-500",borderClass:"border-amber-500/60",pulse:!0,previewDisabled:!0}:"interrupted"===a?{label:"Interrupted",dotClass:"bg-amber-500",borderClass:"border-amber-500/60",pulse:!1,previewDisabled:!0}:"failed"===a?{label:"Failed",dotClass:"bg-red-500",borderClass:"border-red-500/60",pulse:!1,previewDisabled:!0}:"building"===a?{label:"In Progress",dotClass:"bg-violet-500",borderClass:"",pulse:!0,previewDisabled:!0}:r?{label:"Live",dotClass:"bg-emerald-500",borderClass:"",pulse:!0,previewDisabled:!1}:"Error"===e?{label:"Error",dotClass:"bg-red-500",borderClass:"border-red-500/60",pulse:!1,previewDisabled:!0}:{label:"Ready",dotClass:"bg-sky-500",borderClass:"",pulse:!1,previewDisabled:!1}}e.s(["deriveAppLiveStatus",()=>t])},672971,e=>{"use strict";function t(e){return`app-${e}`}e.s(["featureIdForApplication",()=>t])},370002,e=>{"use strict";var t=e.i(215131);e.s(["TriangleAlert",()=>t.default])},74573,e=>{"use strict";var t=e.i(679606),r=e.i(317406);function a({d:e,...r}){return(0,t.jsx)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",...r,"aria-hidden":"true",children:(0,t.jsx)("path",{d:e})})}function i(e){return(0,t.jsx)(a,{d:"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12",...e})}let l={[r.CloudDeploymentProvider.CloudflarePages]:function(e){return(0,t.jsx)(a,{d:"M10.715 14.32H5.442l-.64-1.203L13.673 0l1.397.579-1.752 9.112h5.24l.648 1.192L10.719 24l-1.412-.54ZM4.091 5.448a.5787.5787 0 1 1 0-1.1574.5787.5787 0 0 1 0 1.1574zm1.543 0a.5787.5787 0 1 1 0-1.1574.5787.5787 0 0 1 0 1.1574zm1.544 0a.5787.5787 0 1 1 0-1.1574.5787.5787 0 0 1 0 1.1574zm8.657-2.7h5.424l.772.771v16.975l-.772.772h-7.392l.374-.579h6.779l.432-.432V3.758l-.432-.432h-4.676l-.552 2.85h-.59l.529-2.877.108-.552ZM2.74 21.265l-.772-.772V3.518l.772-.771h7.677l-.386.579H2.98l-.432.432v16.496l.432.432h5.586l-.092.579zm1.157-1.93h3.28l-.116.58h-3.55l-.192-.193v-3.473l.578 1.158zm13.117 0 .579.58H14.7l.385-.58z",...e})},[r.CloudDeploymentProvider.Vercel]:function(e){return(0,t.jsx)(a,{d:"m12 1.608 12 20.784H0Z",...e})},[r.CloudDeploymentProvider.Netlify]:function(e){return(0,t.jsx)(a,{d:"M6.49 19.04h-.23L5.13 17.9v-.23l1.73-1.71h1.2l.15.15v1.2L6.5 19.04ZM5.13 6.31V6.1l1.13-1.13h.23L8.2 6.68v1.2l-.15.15h-1.2L5.13 6.31Zm9.96 9.09h-1.65l-.14-.13v-3.83c0-.68-.27-1.2-1.1-1.23-.42 0-.9 0-1.43.02l-.07.08v4.96l-.14.14H8.9l-.13-.14V8.73l.13-.14h3.7a2.6 2.6 0 0 1 2.61 2.6v4.08l-.13.14Zm-8.37-2.44H.14L0 12.82v-1.64l.14-.14h6.58l.14.14v1.64l-.14.14Zm17.14 0h-6.58l-.14-.14v-1.64l.14-.14h6.58l.14.14v1.64l-.14.14ZM11.05 6.55V1.64l.14-.14h1.65l.14.14v4.9l-.14.14h-1.65l-.14-.13Zm0 15.81v-4.9l.14-.14h1.65l.14.13v4.91l-.14.14h-1.65l-.14-.14Z",...e})},[r.CloudDeploymentProvider.AwsAmplify]:function(e){return(0,t.jsx)(a,{d:"M11.58 2.1 1.15 20.87h4.33l1.9-3.5h9.24l1.9 3.5h4.33L12.42 2.1h-.84Zm.42 5.6 3.12 5.73H8.88L12 7.7Z",...e})},[r.CloudDeploymentProvider.GcpCloudRun]:function(e){return(0,t.jsx)(a,{d:"M12.19 2.38a9.344 9.344 0 0 0-9.234 6.893c.053-.02-.055.013 0 0-3.875 2.551-3.922 8.11-.247 10.941l.006-.007-.007.03a6.717 6.717 0 0 0 4.077 1.356h5.173l.03.03h5.192c6.687.053 9.376-8.605 3.835-12.35a9.365 9.365 0 0 0-2.821-4.552l-.043.043.006-.05A9.344 9.344 0 0 0 12.19 2.38zm-.358 4.146c1.244-.04 2.518.368 3.486 1.15a5.186 5.186 0 0 1 1.862 4.078v.518c3.53-.07 3.53 5.262 0 5.193h-5.193l-.008.009v-.04H6.785a2.59 2.59 0 0 1-1.067-.23h.001a2.597 2.597 0 1 1 3.437-3.437l3.013-3.012A6.747 6.747 0 0 0 8.11 8.24c.018-.01.04-.026.054-.023a5.186 5.186 0 0 1 3.67-1.69z",...e})}},s={[r.CloudDeploymentProvider.CloudflarePages]:"#F38020",[r.CloudDeploymentProvider.Vercel]:"#000000",[r.CloudDeploymentProvider.Netlify]:"#00C7B7",[r.CloudDeploymentProvider.AwsAmplify]:"#FF9900",[r.CloudDeploymentProvider.GcpCloudRun]:"#4285F4"};e.s(["CLOUD_PROVIDER_BRAND_HEX",0,s,"CLOUD_PROVIDER_ICONS",0,l,"GitHubIcon",()=>i])},453721,e=>{"use strict";var t=e.i(679606),r=e.i(152155),a=e.i(711434),i=e.i(962885),l=e.i(619933),s=e.i(382569),n=e.i(542049),o=e.i(83428),d=e.i(3214),c=e.i(853756),p=e.i(131777),u=e.i(873504),h=e.i(440106),x=e.i(958481),m=e.i(383379),g=e.i(730702);let f=(0,e.i(903645).default)("folder-git-2",[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]]);var b=e.i(32494),v=e.i(731463),y=e.i(724042),j=e.i(43416),w=e.i(267669),k=e.i(370002),N=e.i(453360),C=e.i(434682),D=e.i(360112),A=e.i(735364),S=e.i(602287),P=e.i(470646),L=e.i(227190),M=e.i(942616),T=e.i(680554),R=e.i(8537),_=e.i(317406),E=e.i(672971),O=e.i(74573);let I="rgba(255,255,255,0.13)",z="rgba(255,255,255,0.07)",F="rgba(255,255,255,0.04)",$=[function(){return(0,t.jsxs)("svg",{viewBox:"0 0 320 160",className:"h-full w-full","aria-hidden":"true",children:[Array.from({length:8},(e,r)=>Array.from({length:16},(e,a)=>(0,t.jsx)("circle",{cx:10+20*a,cy:10+20*r,r:"1.5",fill:z},`${r}-${a}`))),(0,t.jsx)("circle",{cx:"240",cy:"56",r:"52",fill:"none",stroke:F,strokeWidth:"1"}),(0,t.jsx)("circle",{cx:"240",cy:"56",r:"32",fill:"none",stroke:I,strokeWidth:"0.8"}),(0,t.jsx)("circle",{cx:"60",cy:"112",r:"14",fill:"none",stroke:z,strokeWidth:"1"}),(0,t.jsx)("circle",{cx:"60",cy:"112",r:"6",fill:F})]})},function(){return(0,t.jsxs)("svg",{viewBox:"0 0 320 160",className:"h-full w-full","aria-hidden":"true",children:[[24,48,72,96,120].map((e,r)=>(0,t.jsx)("path",{d:`M0,${e} C64,${e-18+4*r} 128,${e+18-3*r} 192,${e-12+2*r} S288,${e+14} 320,${e}`,fill:"none",stroke:2===r?I:z,strokeWidth:2===r?1.5:1},`wave-${e}`)),(0,t.jsx)("path",{d:"M0,72 C64,54 128,90 192,60 S288,86 320,72 L320,160 L0,160 Z",fill:F}),(0,t.jsx)("circle",{cx:"290",cy:"30",r:"18",fill:"none",stroke:z,strokeWidth:"1"})]})},function(){return(0,t.jsxs)("svg",{viewBox:"0 0 320 160",className:"h-full w-full","aria-hidden":"true",children:[(0,t.jsx)("circle",{cx:"160",cy:"160",r:"120",fill:"none",stroke:F,strokeWidth:"40"}),(0,t.jsx)("circle",{cx:"100",cy:"60",r:"70",fill:"none",stroke:z,strokeWidth:"1"}),(0,t.jsx)("circle",{cx:"220",cy:"80",r:"55",fill:"none",stroke:I,strokeWidth:"1"}),(0,t.jsx)("polygon",{points:"160,18 196,60 160,102 124,60",fill:"none",stroke:z,strokeWidth:"1"}),(0,t.jsx)("circle",{cx:"20",cy:"20",r:"2",fill:I}),(0,t.jsx)("circle",{cx:"300",cy:"20",r:"2",fill:I}),(0,t.jsx)("circle",{cx:"20",cy:"140",r:"2",fill:I}),(0,t.jsx)("circle",{cx:"300",cy:"140",r:"2",fill:I})]})},function(){let e=[];for(let r=32;r<320;r+=32)e.push((0,t.jsx)("line",{x1:r,y1:"0",x2:r,y2:"160",stroke:F,strokeWidth:"1"},`v${r}`));for(let r=32;r<160;r+=32)e.push((0,t.jsx)("line",{x1:"0",y1:r,x2:"320",y2:r,stroke:F,strokeWidth:"1"},`h${r}`));return(0,t.jsxs)("svg",{viewBox:"0 0 320 160",className:"h-full w-full","aria-hidden":"true",children:[e,[20,40,64,90].map(e=>(0,t.jsx)("circle",{cx:"160",cy:"80",r:e,fill:"none",stroke:40===e?I:z,strokeWidth:"1"},e)),(0,t.jsx)("circle",{cx:"160",cy:"80",r:"4",fill:I})]})}];function B({name:e}){let r=$[function(e){let t=0x811c9dc5;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,0x1000193)>>>0;return t}(e)%$.length];return(0,t.jsx)(r,{})}function H({application:i,className:l}){let s=(0,a.useRouter)(),n=(0,C.useQueryClient)(),[d,c]=(0,r.useState)(!1),u=(0,T.useTurnStatus)((0,E.featureIdForApplication)(i.id)),h=(0,R.useDeployAction)({targetId:i.id,targetType:"application",repositoryPath:i.repositoryPath}),I=h.url,z=(0,M.deriveAppLiveStatus)(i.status,u,!!I,i.effectiveStatus),F=i.cloudDeploymentUrl??null,$=i.cloudDeploymentProvider??null,H=$?O.CLOUD_PROVIDER_ICONS[$]:null,Z=$?O.CLOUD_PROVIDER_BRAND_HEX[$]:void 0,V=i.cloudDeploymentStatus===_.CloudDeploymentStatus.Deployed&&!!F,W=i.cloudDeploymentStatus===_.CloudDeploymentStatus.Uploading,U=i.cloudDeploymentStatus===_.CloudDeploymentStatus.Failed,G="building"===i.effectiveStatus,K="interrupted"===i.effectiveStatus,q="failed"===i.effectiveStatus,Q=h.status===_.DeploymentState.Booting||h.deployLoading,X=h.status===_.DeploymentState.Ready&&!!I,J=X?I:V?F:null,Y=!!J,ee=()=>s.push(`/application/${i.id}`),et=i.repositoryPath.split(/[/\\]/).pop()??i.repositoryPath;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("article",{"data-testid":"application-card",onClick:ee,className:(0,p.cn)("group relative flex cursor-pointer flex-col overflow-hidden rounded-sm","bg-card dark:bg-neutral-900","border-border/60 border shadow-sm dark:border-white/10","hover:border-border transition-all duration-200 hover:shadow-lg dark:hover:border-white/20 dark:hover:shadow-black/40","min-h-[280px]",l),children:[(0,t.jsxs)("div",{className:"relative overflow-hidden",style:{height:160},children:[Y?(0,t.jsxs)("div",{className:"absolute inset-0 bg-white dark:bg-neutral-900",children:[(0,t.jsx)("iframe",{src:J,title:`${i.name} preview`,className:"pointer-events-none absolute top-0 left-0 origin-top-left border-0",style:{width:"250%",height:"250%",transform:"scale(0.4)"},sandbox:"allow-same-origin allow-scripts",loading:"lazy"}),(0,t.jsxs)("div",{className:"absolute inset-0 flex items-center justify-center gap-2 bg-black/60 opacity-0 transition-opacity group-hover:opacity-100",onClick:e=>e.stopPropagation(),children:[X?(0,t.jsxs)("button",{type:"button",onClick:()=>void h.stop(),disabled:h.stopLoading,className:"inline-flex h-7 cursor-pointer items-center gap-1 rounded-full bg-white/90 px-3 text-[11px] font-semibold text-neutral-900 hover:bg-red-50 hover:text-red-600",children:[h.stopLoading?(0,t.jsx)(o.Loader2,{className:"h-3 w-3 animate-spin"}):(0,t.jsx)(j.RefreshCw,{className:"h-3 w-3"}),"Stop"]}):null,(0,t.jsxs)("button",{type:"button",onClick:()=>window.open(J,"_blank","noopener,noreferrer"),className:"inline-flex h-7 cursor-pointer items-center gap-1 rounded-full bg-white/90 px-3 text-[11px] font-semibold text-neutral-900 hover:bg-white",children:[(0,t.jsx)(g.ExternalLink,{className:"h-3 w-3"}),"Open"]})]})]}):Q?(0,t.jsx)("div",{className:"absolute inset-0 bg-white dark:bg-neutral-900",children:(0,t.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2",children:[(0,t.jsx)(o.Loader2,{className:"h-6 w-6 animate-spin text-amber-500"}),(0,t.jsx)("span",{className:"text-[11px] font-medium text-amber-600 dark:text-amber-400",children:"Starting…"})]})}):(0,t.jsx)("div",{className:"absolute inset-0 overflow-hidden bg-[#111827] dark:bg-neutral-800",children:(0,t.jsx)(B,{name:i.name})}),(0,t.jsx)("div",{className:"absolute top-2.5 left-2.5",onClick:e=>e.stopPropagation(),children:V?(0,t.jsxs)("span",{className:"flex items-center gap-1 rounded-full bg-black/30 px-2 py-0.5 text-[9px] font-bold tracking-wider text-white uppercase backdrop-blur-sm",children:[H?(0,t.jsx)(H,{className:"h-3 w-3",style:{color:Z??"#fff"}}):(0,t.jsx)("span",{className:"h-1.5 w-1.5 animate-pulse rounded-full bg-emerald-400"}),"Live"]}):W?(0,t.jsxs)("span",{className:"flex items-center gap-1 rounded-full bg-black/30 px-2 py-0.5 text-[9px] font-bold tracking-wider text-white/80 uppercase backdrop-blur-sm",children:[(0,t.jsx)(o.Loader2,{className:"h-2.5 w-2.5 animate-spin"}),"Deploying"]}):G?(0,t.jsxs)("span",{className:"flex items-center gap-1 rounded-full bg-black/30 px-2 py-0.5 text-[9px] font-bold tracking-wider text-white/80 uppercase backdrop-blur-sm",children:[(0,t.jsx)(N.Zap,{className:"h-2.5 w-2.5"}),"Building"]}):z.pulse?(0,t.jsxs)("span",{className:"relative flex h-2 w-2",children:[(0,t.jsx)("span",{className:(0,p.cn)("absolute inline-flex h-full w-full animate-ping rounded-full opacity-75",z.dotClass)}),(0,t.jsx)("span",{className:(0,p.cn)("relative inline-flex h-2 w-2 rounded-full",z.dotClass)})]}):null}),(0,t.jsx)("div",{className:"absolute top-2.5 right-2.5",onClick:e=>e.stopPropagation(),children:(0,t.jsxs)(P.DropdownMenu,{children:[(0,t.jsx)(P.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",className:"flex h-6 w-6 cursor-pointer items-center justify-center rounded-full bg-black/30 text-white/80 opacity-0 backdrop-blur-sm transition-opacity group-hover:opacity-100 hover:bg-black/50",children:(0,t.jsx)(v.MoreHorizontal,{className:"h-3.5 w-3.5"})})}),(0,t.jsx)(P.DropdownMenuContent,{align:"end",sideOffset:4,children:(0,t.jsxs)(P.DropdownMenuItem,{className:"text-destructive focus:text-destructive cursor-pointer",onClick:()=>c(!0),children:[(0,t.jsx)(w.Trash2,{className:"mr-2 h-3.5 w-3.5"}),"Delete"]})})]})})]}),(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-1.5 px-3.5 pt-3 pb-0",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-foreground line-clamp-1 text-[14px] leading-tight font-semibold",children:i.name}),i.description?(0,t.jsx)("p",{className:"text-muted-foreground mt-0.5 line-clamp-1 text-[11px] leading-relaxed",children:i.description}):null]}),W?(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(o.Loader2,{className:"text-muted-foreground h-3 w-3 shrink-0 animate-spin"}),(0,t.jsxs)("span",{className:"text-muted-foreground text-[11px]",children:["Deploying to ",$??"cloud","…"]})]}):U?(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(x.AlertTriangle,{className:"text-destructive/70 h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"text-destructive/80 text-[11px]",children:"Deployment failed"})]}):G?(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(N.Zap,{className:"text-muted-foreground h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"text-muted-foreground text-[11px]",children:"Building with AI…"}),(0,t.jsx)("div",{className:"ml-auto flex gap-0.5",children:[0,1,2].map(e=>(0,t.jsx)("span",{className:"bg-muted-foreground/40 h-1 w-1 animate-bounce rounded-full",style:{animationDelay:`${120*e}ms`}},e))})]}):K?(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(x.AlertTriangle,{className:"h-3 w-3 shrink-0 text-amber-500/70"}),(0,t.jsx)("span",{className:"text-muted-foreground text-[11px]",children:"Build interrupted"})]}):q?(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(k.TriangleAlert,{className:"text-destructive/70 h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"text-muted-foreground text-[11px]",children:"Build failed"})]}):V?null:(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(b.Globe,{className:"text-muted-foreground/40 h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"text-muted-foreground/60 text-[11px]",children:"Not deployed yet"})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3.5 pt-2 pb-3",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[(0,t.jsxs)("button",{type:"button",title:i.repositoryPath,onClick:async t=>{t.stopPropagation();let{openDirectory:r}=await e.A(127062);await r(i.repositoryPath)},className:"text-muted-foreground/70 hover:text-foreground inline-flex shrink-0 items-center gap-1 text-[10px] transition-colors",children:[(0,t.jsx)(f,{className:"h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"max-w-[80px] truncate",children:et})]}),F?(0,t.jsxs)("a",{href:F,target:"_blank",rel:"noopener noreferrer",title:F,className:"text-muted-foreground/70 hover:text-foreground inline-flex min-w-0 items-center gap-1 text-[10px] transition-colors",children:[H?(0,t.jsx)(H,{className:"h-3 w-3 shrink-0",style:{color:Z}}):(0,t.jsx)(b.Globe,{className:"h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"font-mono",children:function(e,t=22){let r=e.replace(/^https?:\/\//,"").replace(/\/$/,"");if(r.length<=t)return r;let a=r.slice(-(t-6));return`${r.slice(0,5)}…${a}`}(F)})]}):null]}),G||W?(0,t.jsxs)("span",{className:"text-muted-foreground inline-flex shrink-0 items-center gap-1.5 text-[11px]",children:[(0,t.jsx)(o.Loader2,{className:"h-3 w-3 animate-spin"}),G?"Building…":"Deploying…"]}):F&&V?(0,t.jsxs)("a",{href:F,target:"_blank",rel:"noopener noreferrer",className:"bg-foreground text-background inline-flex h-7 shrink-0 cursor-pointer items-center gap-1.5 rounded-full px-3 text-[11px] font-semibold transition-opacity hover:opacity-80",children:[(0,t.jsx)(g.ExternalLink,{className:"h-3 w-3"}),"Open live"]}):K?(0,t.jsxs)("button",{type:"button",onClick:ee,className:"inline-flex h-7 shrink-0 cursor-pointer items-center gap-1.5 rounded-full bg-amber-500 px-3 text-[11px] font-semibold text-white transition-opacity hover:opacity-80",children:[(0,t.jsx)(y.Play,{className:"h-3 w-3 fill-current"}),"Continue"]}):q?(0,t.jsxs)("button",{type:"button",onClick:ee,className:"bg-destructive inline-flex h-7 shrink-0 cursor-pointer items-center gap-1.5 rounded-full px-3 text-[11px] font-semibold text-white transition-opacity hover:opacity-80",children:[(0,t.jsx)(m.ArrowRight,{className:"h-3 w-3"}),"View error"]}):(0,t.jsxs)("button",{type:"button",onClick:ee,className:"bg-foreground text-background inline-flex h-7 shrink-0 cursor-pointer items-center gap-1.5 rounded-full px-3 text-[11px] font-semibold transition-opacity hover:opacity-80",children:[(0,t.jsx)(m.ArrowRight,{className:"h-3 w-3"}),"Open"]})]})]}),(0,t.jsx)(S.Dialog,{open:d,onOpenChange:c,children:(0,t.jsxs)(S.DialogContent,{className:"max-w-xs",children:[(0,t.jsxs)(S.DialogHeader,{children:[(0,t.jsx)(S.DialogTitle,{children:"Delete application?"}),(0,t.jsxs)(S.DialogDescription,{children:["This will permanently remove ",(0,t.jsx)("strong",{children:i.name}),"."]})]}),(0,t.jsxs)(S.DialogFooter,{className:"grid grid-cols-2 gap-2 sm:flex-none",children:[(0,t.jsx)(S.DialogClose,{asChild:!0,children:(0,t.jsx)(A.Button,{variant:"outline",children:"Cancel"})}),(0,t.jsx)(A.Button,{variant:"destructive",onClick:async()=>{c(!1);let e=await (0,L.deleteApplication)(i.id);e.error?D.toast.error("Failed to delete",{description:e.error}):(D.toast.success("Application deleted"),n.invalidateQueries({queryKey:["applications"]}))},children:"Delete"})]})]})})]})}var Z=e.i(508893);let V=(0,Z.createServerReference)("00ad19b30c66b798476855eee8c99ef61a175cd38a",Z.callServer,void 0,Z.findSourceMapURL,"listDeployments");function W({className:l}){let s=(0,a.useRouter)(),[d,c]=(0,r.useState)(!1),{data:x=[],isLoading:m}=(0,i.useQuery)({queryKey:["applications"],queryFn:async()=>{let e=await fetch("/api/applications");if(!e.ok)throw Error("Failed to fetch applications");return e.json()},staleTime:3e4}),{data:g=[]}=(0,i.useQuery)({queryKey:["deployments","all"],queryFn:()=>V(),staleTime:0,refetchInterval:3e3}),f=(0,r.useMemo)(()=>[...x].sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()),[x]);return(0,t.jsx)(u.DeploymentStatusProvider,{initialDeployments:g,children:(0,t.jsxs)("div",{"data-testid":"applications-page-client",className:(0,p.cn)("relative flex min-h-full flex-col",l),children:[(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-4 p-6",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(n.LayoutGrid,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:"Applications"}),m?null:(0,t.jsxs)("span",{className:"text-muted-foreground text-[10px]",children:[x.length," ",1===x.length?"app":"apps"]})]}),m?(0,t.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,t.jsx)(o.Loader2,{className:"text-muted-foreground h-5 w-5 animate-spin"})}):0===f.length?(0,t.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,t.jsx)(h.ControlCenterEmptyState,{onApplicationCreated:e=>{s.push(`/application/${e}`)}})}):(0,t.jsxs)("div",{"data-testid":"applications-page-grid",className:"grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",children:[(0,t.jsx)(U,{onDescribe:()=>c(!0),onOpenLocalDirectory:async()=>{let{pickFolder:t}=await e.A(633405),r=await t();if(!r)return;let{adoptLocalDirectory:a}=await e.A(743797),i=await a({repositoryPath:r});i.applicationId&&s.push(`/application/${i.applicationId}`)},onImportGitHub:()=>window.dispatchEvent(new CustomEvent("shep:open-github-import"))}),f.map(e=>(0,t.jsx)(H,{application:e},e.id))]})]}),d?(0,t.jsx)("div",{className:"absolute inset-0 z-40",children:(0,t.jsx)(h.ControlCenterEmptyState,{onApplicationCreated:e=>{s.push(`/application/${e}`)},onClose:()=>c(!1),className:"bg-background"})}):null]})})}function U({onDescribe:e,onOpenLocalDirectory:r,onImportGitHub:a}){let i=[{icon:(0,t.jsx)(c.Sparkles,{className:"h-4 w-4"}),label:"Describe with AI",description:"Tell Shep what to build — it scaffolds + ships",onClick:e,accent:"text-indigo-500 bg-indigo-100 dark:bg-indigo-900/60"},...r?[{icon:(0,t.jsx)(l.FolderOpen,{className:"h-4 w-4"}),label:"Open local project",description:"Pick an existing folder and continue from there",onClick:r,accent:"text-amber-600 bg-amber-100 dark:bg-amber-900/40"}]:[],...a?[{icon:(0,t.jsx)(s.Github,{className:"h-4 w-4"}),label:"Import from GitHub",description:"Connect an existing repo to manage here",onClick:a,accent:"text-foreground bg-muted"}]:[]];return(0,t.jsxs)("div",{className:(0,p.cn)("group relative flex cursor-pointer flex-col overflow-hidden rounded-sm border-2","border-dashed border-indigo-200 bg-transparent transition-all duration-200","hover:border-indigo-400 hover:bg-indigo-500/[0.03]","dark:border-indigo-900 dark:hover:border-indigo-700","min-h-[280px]"),onClick:e,children:[(0,t.jsxs)("div",{className:(0,p.cn)("absolute inset-0 flex flex-col items-center justify-center gap-3","transition-opacity duration-200 group-hover:opacity-0","pointer-events-none"),children:[(0,t.jsx)("div",{className:"flex h-11 w-11 items-center justify-center rounded-full bg-indigo-100 text-indigo-500 dark:bg-indigo-900/60 dark:text-indigo-400",children:(0,t.jsx)(d.Plus,{className:"h-5 w-5 stroke-[2]"})}),(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("p",{className:"text-foreground text-sm font-semibold",children:"New application"}),(0,t.jsx)("p",{className:"text-muted-foreground mt-0.5 text-[11px]",children:"Click to get started"})]})]}),(0,t.jsxs)("div",{className:(0,p.cn)("absolute inset-0 flex flex-col justify-center gap-1.5 px-4","translate-y-3 opacity-0 transition-all duration-200","group-hover:translate-y-0 group-hover:opacity-100"),children:[(0,t.jsx)("p",{className:"text-muted-foreground mb-1 px-1 text-[10px] font-medium tracking-wide uppercase",children:"How would you like to start?"}),i.map(e=>(0,t.jsxs)("button",{type:"button",onClick:t=>{t.stopPropagation(),e.onClick()},className:(0,p.cn)("flex w-full cursor-pointer items-center gap-3 rounded-lg px-3 py-2.5 text-left","border-border/60 bg-background/80 border transition-all duration-150","hover:border-indigo-300 hover:bg-indigo-50 dark:hover:border-indigo-700 dark:hover:bg-indigo-950/40"),children:[(0,t.jsx)("span",{className:(0,p.cn)("flex h-7 w-7 shrink-0 items-center justify-center rounded-md",e.accent),children:e.icon}),(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("div",{className:"text-foreground text-[12px] font-semibold",children:e.label}),(0,t.jsx)("div",{className:"text-muted-foreground truncate text-[10px]",children:e.description})]})]},e.label))]})]})}e.s(["ApplicationsPageClient",()=>W],453721)},127062,e=>{e.v(t=>Promise.all(["static/chunks/39fe1c1397d5483b.js"].map(t=>e.l(t))).then(()=>t(617841)))},633405,e=>{e.v(e=>Promise.resolve().then(()=>e(478521)))},743797,e=>{e.v(t=>Promise.all(["static/chunks/f6dc1ba364203bb2.js"].map(t=>e.l(t))).then(()=>t(868662)))}]);
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,853756,e=>{"use strict";let t=(0,e.i(903645).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);e.s(["Sparkles",()=>t],853756)},383379,e=>{"use strict";let t=(0,e.i(903645).default)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);e.s(["ArrowRight",()=>t],383379)},440106,e=>{"use strict";var t=e.i(679606),r=e.i(152155),a=e.i(711719),i=e.i(935946),l=e.i(83428),s=e.i(542049),n=e.i(453360),o=e.i(941698),d=e.i(99105),c=e.i(723925),p=e.i(860253);e.i(541001);var u=e.i(64780),h=e.i(131777),x=e.i(508893);let m=(0,x.createServerReference)("402a7da73158b6bd6c8fb8ab5b0344dc0e0f08e228",x.callServer,void 0,x.findSourceMapURL,"createProjectAndFeature"),g=(0,x.createServerReference)("402b7881a750d5c7c7125153b65fdd64c555ddcdc2",x.callServer,void 0,x.findSourceMapURL,"createApplication");var f=e.i(684632),b=e.i(41413);e.i(650032);var v=e.i(486254);e.i(692233);var y=e.i(210025),j=e.i(102828),w=e.i(470646),k=e.i(731151);let N=["application","fast","spec"],C={application:{icon:s.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:n.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:o.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 D({onRepositorySelect:e,onApplicationCreated:s,onClose:n,className:o}){let{t:x}=(0,u.useTranslation)("web"),[D,A]=(0,r.useState)(""),[S,P]=(0,r.useState)(void 0),[L,M]=(0,r.useState)(void 0);(0,r.useEffect)(()=>{(0,f.getDefaultAgentAndModel)().then(e=>{P(t=>t??e.agentType),M(t=>t??e.model)})},[]);let[T,R]=(0,r.useState)("application"),[_,E]=(0,r.useState)(!1),[O,I]=(0,r.useState)(null),[z,F]=(0,r.useState)(!1),$=(0,r.useRef)(null),B=(0,k.useAttachments)(),H=!!e,Z=H?T:"application",V=(0,r.useCallback)(()=>{R(e=>{let t=N.indexOf(e);return N[(t+1)%N.length]})},[]);(0,r.useEffect)(()=>{let t=t=>{"Escape"===t.key&&n&&n(),"Tab"===t.key&&t.shiftKey&&e&&(t.preventDefault(),V())};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[n,V,e]);let W=(0,r.useCallback)(async()=>{if(D.trim()&&!_){E(!0),I(null);try{if("application"!==Z&&e){let t=await m({description:D.trim(),attachments:B.completedAttachments.map(e=>({path:e.path,name:e.name,notes:e.notes})),agentType:S,model:L,fast:"fast"===Z});if(t.error){I(t.error),E(!1);return}t.repositoryPath&&e?.(t.repositoryPath),t.feature&&t.repositoryPath&&window.dispatchEvent(new CustomEvent("shep:feature-created",{detail:{featureId:t.feature.id,name:t.feature.name,description:t.feature.description,repositoryPath:t.repositoryPath}}))}else{let e=await g({description:D.trim(),agentType:S,modelOverride:L,initialPrompt:D.trim()});if(e.error){I(e.error),E(!1);return}e.application&&s?.(e.application.id)}}catch{I("Something went wrong. Please try again."),E(!1)}}},[D,_,Z,B.completedAttachments,S,L,e,s]),U=(0,r.useCallback)(e=>{"Enter"===e.key&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),W())},[W]),G=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/dialog/pick-files");if(!e.ok)return;let t=await e.json();if(!t.paths?.length)return;for(let e of t.paths){let t=await fetch("/api/attachments/upload-from-path",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e,sessionId:"onboarding"})});if(!t.ok)continue;let r=await t.json();B.addAttachment(r)}}catch{}},[B.addAttachment]),K=(0,r.useCallback)(e=>{A(e),$.current?.focus()},[]),q=C[Z],Q=q.icon;return(0,t.jsxs)("div",{"data-testid":"control-center-empty-state",className:(0,h.cn)("relative flex h-full w-full flex-col items-center justify-center overflow-hidden px-8",o),children:[(0,t.jsx)("div",{className:"onboard-bg pointer-events-none absolute inset-0 animate-[onboard-fade-in_1.2s_ease-out_both]"}),n?(0,t.jsx)("button",{type:"button",onClick:n,"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,t.jsx)(p.X,{className:"h-5 w-5"})}):null,(0,t.jsxs)("div",{className:"relative flex w-full max-w-2xl flex-col items-center",children:[(0,t.jsx)("div",{className:"mb-6 animate-[onboard-logo_0.8s_cubic-bezier(0.16,1,0.3,1)_both]",style:{animationDelay:"0ms"},children:(0,t.jsx)(y.ShepLogo,{size:72,className:"text-foreground"})}),(0,t.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,t.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,t.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,t.jsxs)("div",{onFocus:()=>F(!0),onBlur:()=>F(!1),onDragEnter:B.handleDragEnter,onDragLeave:B.handleDragLeave,onDragOver:B.handleDragOver,onDrop:B.handleDrop,className:(0,h.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]",z&&"ring-ring/50 border-ring shadow-md ring-[3px] dark:border-orange-500/40 dark:ring-orange-500/25",B.isDragOver&&"border-primary/50 bg-primary/5",_&&"opacity-70"),children:[(0,t.jsx)("textarea",{ref:$,rows:2,autoFocus:!0,value:D,onChange:e=>A(e.target.value),onKeyDown:U,onPaste:B.handlePaste,placeholder:q.placeholder,disabled:_,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"}),B.attachments.length>0?(0,t.jsx)("div",{className:"flex shrink-0 items-center gap-2.5 overflow-x-auto overflow-y-visible px-5 pt-2 pb-2",children:B.attachments.map(e=>(0,t.jsx)(v.AttachmentChip,{name:e.name,size:e.size,mimeType:e.mimeType,path:e.path,onRemove:()=>B.removeAttachment(e.id),loading:e.loading,notes:e.notes,onNotesChange:t=>B.updateNotes(e.id,t)},e.id))}):null,B.uploadError?(0,t.jsx)("p",{className:"text-destructive px-4 pb-2 text-xs",children:B.uploadError}):null,(0,t.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,t.jsx)(b.AgentModelPicker,{initialAgentType:S??"",initialModel:L??"",mode:"override",showInstallStatus:!0,onAgentModelChange:(e,t)=>{P(e),M(t)},className:"w-55"}),(0,t.jsx)("div",{className:"flex-1"}),H?(0,t.jsxs)(w.DropdownMenu,{children:[(0,t.jsx)(w.DropdownMenuTrigger,{asChild:!0,children:(0,t.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,t.jsxs)("span",{className:"flex animate-[onboard-fade-up_0.25s_ease-out_both] items-center gap-1.5",children:[(0,t.jsx)(Q,{className:"h-3.5 w-3.5"}),q.label]},Z),(0,t.jsx)(d.ChevronDown,{className:"h-3 w-3 opacity-50"})]})}),(0,t.jsx)(w.DropdownMenuContent,{align:"end",className:"min-w-[160px]",children:N.map(e=>{let r=C[e],a=r.icon,i=Z===e;return(0,t.jsxs)(w.DropdownMenuItem,{onClick:()=>R(e),"data-testid":`build-mode-${e}`,className:"flex items-center gap-2",children:[(0,t.jsx)(a,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"flex-1",children:r.label}),i?(0,t.jsx)(c.Check,{className:"text-foreground h-3.5 w-3.5"}):null]},e)})})]}):null,(0,t.jsxs)(j.Tooltip,{children:[(0,t.jsx)(j.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",onClick:G,disabled:_,"aria-label":x("chat.attachFiles"),className:"text-muted-foreground hover:text-foreground cursor-pointer rounded p-1 transition-colors disabled:opacity-50",children:(0,t.jsx)(i.Paperclip,{className:"h-4 w-4"})})}),(0,t.jsx)(j.TooltipContent,{side:"top",children:x("chat.attachFiles")})]}),(0,t.jsx)("button",{type:"button",onClick:W,disabled:!D.trim()||_,className:(0,h.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:_?(0,t.jsx)(l.Loader2,{className:"h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(a.SendHorizontal,{className:"h-3.5 w-3.5"})})]})]}),O?(0,t.jsx)("p",{className:"text-destructive mt-2 text-center text-sm",children:O}):null]}),(0,t.jsx)("div",{className:"mt-6 flex animate-[onboard-fade-up_0.4s_ease-out_both] flex-wrap justify-center gap-2",children:q.suggestions.map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>K(e),disabled:_,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:e},e))},Z)]})]})}e.s(["ControlCenterEmptyState",()=>D],440106)},857306,e=>{"use strict";var t=e.i(508893);let r=(0,t.createServerReference)("400601cc704fc3a542db95c4219b7261168cbe675d",t.callServer,void 0,t.findSourceMapURL,"deleteApplication");e.s(["deleteApplication",()=>r])},942616,e=>{"use strict";function t(e,t,r,a){return"processing"===t?{label:"In Progress",dotClass:"bg-violet-500",borderClass:"",pulse:!0,previewDisabled:!0}:"awaiting_input"===t?{label:"Action Required",dotClass:"bg-amber-500",borderClass:"border-amber-500/60",pulse:!0,previewDisabled:!0}:"interrupted"===a?{label:"Interrupted",dotClass:"bg-amber-500",borderClass:"border-amber-500/60",pulse:!1,previewDisabled:!0}:"failed"===a?{label:"Failed",dotClass:"bg-red-500",borderClass:"border-red-500/60",pulse:!1,previewDisabled:!0}:"building"===a?{label:"In Progress",dotClass:"bg-violet-500",borderClass:"",pulse:!0,previewDisabled:!0}:r?{label:"Live",dotClass:"bg-emerald-500",borderClass:"",pulse:!0,previewDisabled:!1}:"Error"===e?{label:"Error",dotClass:"bg-red-500",borderClass:"border-red-500/60",pulse:!1,previewDisabled:!0}:{label:"Ready",dotClass:"bg-sky-500",borderClass:"",pulse:!1,previewDisabled:!1}}e.s(["deriveAppLiveStatus",()=>t])},672971,e=>{"use strict";function t(e){return`app-${e}`}e.s(["featureIdForApplication",()=>t])},370002,e=>{"use strict";var t=e.i(215131);e.s(["TriangleAlert",()=>t.default])},74573,e=>{"use strict";var t=e.i(679606),r=e.i(317406);function a({d:e,...r}){return(0,t.jsx)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",...r,"aria-hidden":"true",children:(0,t.jsx)("path",{d:e})})}function i(e){return(0,t.jsx)(a,{d:"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12",...e})}let l={[r.CloudDeploymentProvider.CloudflarePages]:function(e){return(0,t.jsx)(a,{d:"M10.715 14.32H5.442l-.64-1.203L13.673 0l1.397.579-1.752 9.112h5.24l.648 1.192L10.719 24l-1.412-.54ZM4.091 5.448a.5787.5787 0 1 1 0-1.1574.5787.5787 0 0 1 0 1.1574zm1.543 0a.5787.5787 0 1 1 0-1.1574.5787.5787 0 0 1 0 1.1574zm1.544 0a.5787.5787 0 1 1 0-1.1574.5787.5787 0 0 1 0 1.1574zm8.657-2.7h5.424l.772.771v16.975l-.772.772h-7.392l.374-.579h6.779l.432-.432V3.758l-.432-.432h-4.676l-.552 2.85h-.59l.529-2.877.108-.552ZM2.74 21.265l-.772-.772V3.518l.772-.771h7.677l-.386.579H2.98l-.432.432v16.496l.432.432h5.586l-.092.579zm1.157-1.93h3.28l-.116.58h-3.55l-.192-.193v-3.473l.578 1.158zm13.117 0 .579.58H14.7l.385-.58z",...e})},[r.CloudDeploymentProvider.Vercel]:function(e){return(0,t.jsx)(a,{d:"m12 1.608 12 20.784H0Z",...e})},[r.CloudDeploymentProvider.Netlify]:function(e){return(0,t.jsx)(a,{d:"M6.49 19.04h-.23L5.13 17.9v-.23l1.73-1.71h1.2l.15.15v1.2L6.5 19.04ZM5.13 6.31V6.1l1.13-1.13h.23L8.2 6.68v1.2l-.15.15h-1.2L5.13 6.31Zm9.96 9.09h-1.65l-.14-.13v-3.83c0-.68-.27-1.2-1.1-1.23-.42 0-.9 0-1.43.02l-.07.08v4.96l-.14.14H8.9l-.13-.14V8.73l.13-.14h3.7a2.6 2.6 0 0 1 2.61 2.6v4.08l-.13.14Zm-8.37-2.44H.14L0 12.82v-1.64l.14-.14h6.58l.14.14v1.64l-.14.14Zm17.14 0h-6.58l-.14-.14v-1.64l.14-.14h6.58l.14.14v1.64l-.14.14ZM11.05 6.55V1.64l.14-.14h1.65l.14.14v4.9l-.14.14h-1.65l-.14-.13Zm0 15.81v-4.9l.14-.14h1.65l.14.13v4.91l-.14.14h-1.65l-.14-.14Z",...e})},[r.CloudDeploymentProvider.AwsAmplify]:function(e){return(0,t.jsx)(a,{d:"M11.58 2.1 1.15 20.87h4.33l1.9-3.5h9.24l1.9 3.5h4.33L12.42 2.1h-.84Zm.42 5.6 3.12 5.73H8.88L12 7.7Z",...e})},[r.CloudDeploymentProvider.GcpCloudRun]:function(e){return(0,t.jsx)(a,{d:"M12.19 2.38a9.344 9.344 0 0 0-9.234 6.893c.053-.02-.055.013 0 0-3.875 2.551-3.922 8.11-.247 10.941l.006-.007-.007.03a6.717 6.717 0 0 0 4.077 1.356h5.173l.03.03h5.192c6.687.053 9.376-8.605 3.835-12.35a9.365 9.365 0 0 0-2.821-4.552l-.043.043.006-.05A9.344 9.344 0 0 0 12.19 2.38zm-.358 4.146c1.244-.04 2.518.368 3.486 1.15a5.186 5.186 0 0 1 1.862 4.078v.518c3.53-.07 3.53 5.262 0 5.193h-5.193l-.008.009v-.04H6.785a2.59 2.59 0 0 1-1.067-.23h.001a2.597 2.597 0 1 1 3.437-3.437l3.013-3.012A6.747 6.747 0 0 0 8.11 8.24c.018-.01.04-.026.054-.023a5.186 5.186 0 0 1 3.67-1.69z",...e})}},s={[r.CloudDeploymentProvider.CloudflarePages]:"#F38020",[r.CloudDeploymentProvider.Vercel]:"#000000",[r.CloudDeploymentProvider.Netlify]:"#00C7B7",[r.CloudDeploymentProvider.AwsAmplify]:"#FF9900",[r.CloudDeploymentProvider.GcpCloudRun]:"#4285F4"};e.s(["CLOUD_PROVIDER_BRAND_HEX",0,s,"CLOUD_PROVIDER_ICONS",0,l,"GitHubIcon",()=>i])},453721,e=>{"use strict";var t=e.i(679606),r=e.i(152155),a=e.i(711434),i=e.i(962885),l=e.i(619933),s=e.i(382569),n=e.i(542049),o=e.i(83428),d=e.i(3214),c=e.i(853756),p=e.i(131777),u=e.i(873504),h=e.i(440106),x=e.i(958481),m=e.i(383379),g=e.i(730702);let f=(0,e.i(903645).default)("folder-git-2",[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]]);var b=e.i(32494),v=e.i(731463),y=e.i(724042),j=e.i(43416),w=e.i(267669),k=e.i(370002),N=e.i(453360),C=e.i(434682),D=e.i(360112),A=e.i(735364),S=e.i(602287),P=e.i(470646),L=e.i(857306),M=e.i(942616),T=e.i(680554),R=e.i(8537),_=e.i(317406),E=e.i(672971),O=e.i(74573);let I="rgba(255,255,255,0.13)",z="rgba(255,255,255,0.07)",F="rgba(255,255,255,0.04)",$=[function(){return(0,t.jsxs)("svg",{viewBox:"0 0 320 160",className:"h-full w-full","aria-hidden":"true",children:[Array.from({length:8},(e,r)=>Array.from({length:16},(e,a)=>(0,t.jsx)("circle",{cx:10+20*a,cy:10+20*r,r:"1.5",fill:z},`${r}-${a}`))),(0,t.jsx)("circle",{cx:"240",cy:"56",r:"52",fill:"none",stroke:F,strokeWidth:"1"}),(0,t.jsx)("circle",{cx:"240",cy:"56",r:"32",fill:"none",stroke:I,strokeWidth:"0.8"}),(0,t.jsx)("circle",{cx:"60",cy:"112",r:"14",fill:"none",stroke:z,strokeWidth:"1"}),(0,t.jsx)("circle",{cx:"60",cy:"112",r:"6",fill:F})]})},function(){return(0,t.jsxs)("svg",{viewBox:"0 0 320 160",className:"h-full w-full","aria-hidden":"true",children:[[24,48,72,96,120].map((e,r)=>(0,t.jsx)("path",{d:`M0,${e} C64,${e-18+4*r} 128,${e+18-3*r} 192,${e-12+2*r} S288,${e+14} 320,${e}`,fill:"none",stroke:2===r?I:z,strokeWidth:2===r?1.5:1},`wave-${e}`)),(0,t.jsx)("path",{d:"M0,72 C64,54 128,90 192,60 S288,86 320,72 L320,160 L0,160 Z",fill:F}),(0,t.jsx)("circle",{cx:"290",cy:"30",r:"18",fill:"none",stroke:z,strokeWidth:"1"})]})},function(){return(0,t.jsxs)("svg",{viewBox:"0 0 320 160",className:"h-full w-full","aria-hidden":"true",children:[(0,t.jsx)("circle",{cx:"160",cy:"160",r:"120",fill:"none",stroke:F,strokeWidth:"40"}),(0,t.jsx)("circle",{cx:"100",cy:"60",r:"70",fill:"none",stroke:z,strokeWidth:"1"}),(0,t.jsx)("circle",{cx:"220",cy:"80",r:"55",fill:"none",stroke:I,strokeWidth:"1"}),(0,t.jsx)("polygon",{points:"160,18 196,60 160,102 124,60",fill:"none",stroke:z,strokeWidth:"1"}),(0,t.jsx)("circle",{cx:"20",cy:"20",r:"2",fill:I}),(0,t.jsx)("circle",{cx:"300",cy:"20",r:"2",fill:I}),(0,t.jsx)("circle",{cx:"20",cy:"140",r:"2",fill:I}),(0,t.jsx)("circle",{cx:"300",cy:"140",r:"2",fill:I})]})},function(){let e=[];for(let r=32;r<320;r+=32)e.push((0,t.jsx)("line",{x1:r,y1:"0",x2:r,y2:"160",stroke:F,strokeWidth:"1"},`v${r}`));for(let r=32;r<160;r+=32)e.push((0,t.jsx)("line",{x1:"0",y1:r,x2:"320",y2:r,stroke:F,strokeWidth:"1"},`h${r}`));return(0,t.jsxs)("svg",{viewBox:"0 0 320 160",className:"h-full w-full","aria-hidden":"true",children:[e,[20,40,64,90].map(e=>(0,t.jsx)("circle",{cx:"160",cy:"80",r:e,fill:"none",stroke:40===e?I:z,strokeWidth:"1"},e)),(0,t.jsx)("circle",{cx:"160",cy:"80",r:"4",fill:I})]})}];function B({name:e}){let r=$[function(e){let t=0x811c9dc5;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,0x1000193)>>>0;return t}(e)%$.length];return(0,t.jsx)(r,{})}function H({application:i,className:l}){let s=(0,a.useRouter)(),n=(0,C.useQueryClient)(),[d,c]=(0,r.useState)(!1),u=(0,T.useTurnStatus)((0,E.featureIdForApplication)(i.id)),h=(0,R.useDeployAction)({targetId:i.id,targetType:"application",repositoryPath:i.repositoryPath}),I=h.url,z=(0,M.deriveAppLiveStatus)(i.status,u,!!I,i.effectiveStatus),F=i.cloudDeploymentUrl??null,$=i.cloudDeploymentProvider??null,H=$?O.CLOUD_PROVIDER_ICONS[$]:null,Z=$?O.CLOUD_PROVIDER_BRAND_HEX[$]:void 0,V=i.cloudDeploymentStatus===_.CloudDeploymentStatus.Deployed&&!!F,W=i.cloudDeploymentStatus===_.CloudDeploymentStatus.Uploading,U=i.cloudDeploymentStatus===_.CloudDeploymentStatus.Failed,G="building"===i.effectiveStatus,K="interrupted"===i.effectiveStatus,q="failed"===i.effectiveStatus,Q=h.status===_.DeploymentState.Booting||h.deployLoading,X=h.status===_.DeploymentState.Ready&&!!I,J=X?I:V?F:null,Y=!!J,ee=()=>s.push(`/application/${i.id}`),et=i.repositoryPath.split(/[/\\]/).pop()??i.repositoryPath;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("article",{"data-testid":"application-card",onClick:ee,className:(0,p.cn)("group relative flex cursor-pointer flex-col overflow-hidden rounded-sm","bg-card dark:bg-neutral-900","border-border/60 border shadow-sm dark:border-white/10","hover:border-border transition-all duration-200 hover:shadow-lg dark:hover:border-white/20 dark:hover:shadow-black/40","min-h-[280px]",l),children:[(0,t.jsxs)("div",{className:"relative overflow-hidden",style:{height:160},children:[Y?(0,t.jsxs)("div",{className:"absolute inset-0 bg-white dark:bg-neutral-900",children:[(0,t.jsx)("iframe",{src:J,title:`${i.name} preview`,className:"pointer-events-none absolute top-0 left-0 origin-top-left border-0",style:{width:"250%",height:"250%",transform:"scale(0.4)"},sandbox:"allow-same-origin allow-scripts",loading:"lazy"}),(0,t.jsxs)("div",{className:"absolute inset-0 flex items-center justify-center gap-2 bg-black/60 opacity-0 transition-opacity group-hover:opacity-100",onClick:e=>e.stopPropagation(),children:[X?(0,t.jsxs)("button",{type:"button",onClick:()=>void h.stop(),disabled:h.stopLoading,className:"inline-flex h-7 cursor-pointer items-center gap-1 rounded-full bg-white/90 px-3 text-[11px] font-semibold text-neutral-900 hover:bg-red-50 hover:text-red-600",children:[h.stopLoading?(0,t.jsx)(o.Loader2,{className:"h-3 w-3 animate-spin"}):(0,t.jsx)(j.RefreshCw,{className:"h-3 w-3"}),"Stop"]}):null,(0,t.jsxs)("button",{type:"button",onClick:()=>window.open(J,"_blank","noopener,noreferrer"),className:"inline-flex h-7 cursor-pointer items-center gap-1 rounded-full bg-white/90 px-3 text-[11px] font-semibold text-neutral-900 hover:bg-white",children:[(0,t.jsx)(g.ExternalLink,{className:"h-3 w-3"}),"Open"]})]})]}):Q?(0,t.jsx)("div",{className:"absolute inset-0 bg-white dark:bg-neutral-900",children:(0,t.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2",children:[(0,t.jsx)(o.Loader2,{className:"h-6 w-6 animate-spin text-amber-500"}),(0,t.jsx)("span",{className:"text-[11px] font-medium text-amber-600 dark:text-amber-400",children:"Starting…"})]})}):(0,t.jsx)("div",{className:"absolute inset-0 overflow-hidden bg-[#111827] dark:bg-neutral-800",children:(0,t.jsx)(B,{name:i.name})}),(0,t.jsx)("div",{className:"absolute top-2.5 left-2.5",onClick:e=>e.stopPropagation(),children:V?(0,t.jsxs)("span",{className:"flex items-center gap-1 rounded-full bg-black/30 px-2 py-0.5 text-[9px] font-bold tracking-wider text-white uppercase backdrop-blur-sm",children:[H?(0,t.jsx)(H,{className:"h-3 w-3",style:{color:Z??"#fff"}}):(0,t.jsx)("span",{className:"h-1.5 w-1.5 animate-pulse rounded-full bg-emerald-400"}),"Live"]}):W?(0,t.jsxs)("span",{className:"flex items-center gap-1 rounded-full bg-black/30 px-2 py-0.5 text-[9px] font-bold tracking-wider text-white/80 uppercase backdrop-blur-sm",children:[(0,t.jsx)(o.Loader2,{className:"h-2.5 w-2.5 animate-spin"}),"Deploying"]}):G?(0,t.jsxs)("span",{className:"flex items-center gap-1 rounded-full bg-black/30 px-2 py-0.5 text-[9px] font-bold tracking-wider text-white/80 uppercase backdrop-blur-sm",children:[(0,t.jsx)(N.Zap,{className:"h-2.5 w-2.5"}),"Building"]}):z.pulse?(0,t.jsxs)("span",{className:"relative flex h-2 w-2",children:[(0,t.jsx)("span",{className:(0,p.cn)("absolute inline-flex h-full w-full animate-ping rounded-full opacity-75",z.dotClass)}),(0,t.jsx)("span",{className:(0,p.cn)("relative inline-flex h-2 w-2 rounded-full",z.dotClass)})]}):null}),(0,t.jsx)("div",{className:"absolute top-2.5 right-2.5",onClick:e=>e.stopPropagation(),children:(0,t.jsxs)(P.DropdownMenu,{children:[(0,t.jsx)(P.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",className:"flex h-6 w-6 cursor-pointer items-center justify-center rounded-full bg-black/30 text-white/80 opacity-0 backdrop-blur-sm transition-opacity group-hover:opacity-100 hover:bg-black/50",children:(0,t.jsx)(v.MoreHorizontal,{className:"h-3.5 w-3.5"})})}),(0,t.jsx)(P.DropdownMenuContent,{align:"end",sideOffset:4,children:(0,t.jsxs)(P.DropdownMenuItem,{className:"text-destructive focus:text-destructive cursor-pointer",onClick:()=>c(!0),children:[(0,t.jsx)(w.Trash2,{className:"mr-2 h-3.5 w-3.5"}),"Delete"]})})]})})]}),(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-1.5 px-3.5 pt-3 pb-0",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-foreground line-clamp-1 text-[14px] leading-tight font-semibold",children:i.name}),i.description?(0,t.jsx)("p",{className:"text-muted-foreground mt-0.5 line-clamp-1 text-[11px] leading-relaxed",children:i.description}):null]}),W?(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(o.Loader2,{className:"text-muted-foreground h-3 w-3 shrink-0 animate-spin"}),(0,t.jsxs)("span",{className:"text-muted-foreground text-[11px]",children:["Deploying to ",$??"cloud","…"]})]}):U?(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(x.AlertTriangle,{className:"text-destructive/70 h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"text-destructive/80 text-[11px]",children:"Deployment failed"})]}):G?(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(N.Zap,{className:"text-muted-foreground h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"text-muted-foreground text-[11px]",children:"Building with AI…"}),(0,t.jsx)("div",{className:"ml-auto flex gap-0.5",children:[0,1,2].map(e=>(0,t.jsx)("span",{className:"bg-muted-foreground/40 h-1 w-1 animate-bounce rounded-full",style:{animationDelay:`${120*e}ms`}},e))})]}):K?(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(x.AlertTriangle,{className:"h-3 w-3 shrink-0 text-amber-500/70"}),(0,t.jsx)("span",{className:"text-muted-foreground text-[11px]",children:"Build interrupted"})]}):q?(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(k.TriangleAlert,{className:"text-destructive/70 h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"text-muted-foreground text-[11px]",children:"Build failed"})]}):V?null:(0,t.jsxs)("div",{className:"flex items-center gap-1.5 py-0.5",children:[(0,t.jsx)(b.Globe,{className:"text-muted-foreground/40 h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"text-muted-foreground/60 text-[11px]",children:"Not deployed yet"})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3.5 pt-2 pb-3",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[(0,t.jsxs)("button",{type:"button",title:i.repositoryPath,onClick:async t=>{t.stopPropagation();let{openDirectory:r}=await e.A(127062);await r(i.repositoryPath)},className:"text-muted-foreground/70 hover:text-foreground inline-flex shrink-0 items-center gap-1 text-[10px] transition-colors",children:[(0,t.jsx)(f,{className:"h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"max-w-[80px] truncate",children:et})]}),F?(0,t.jsxs)("a",{href:F,target:"_blank",rel:"noopener noreferrer",title:F,className:"text-muted-foreground/70 hover:text-foreground inline-flex min-w-0 items-center gap-1 text-[10px] transition-colors",children:[H?(0,t.jsx)(H,{className:"h-3 w-3 shrink-0",style:{color:Z}}):(0,t.jsx)(b.Globe,{className:"h-3 w-3 shrink-0"}),(0,t.jsx)("span",{className:"font-mono",children:function(e,t=22){let r=e.replace(/^https?:\/\//,"").replace(/\/$/,"");if(r.length<=t)return r;let a=r.slice(-(t-6));return`${r.slice(0,5)}…${a}`}(F)})]}):null]}),G||W?(0,t.jsxs)("span",{className:"text-muted-foreground inline-flex shrink-0 items-center gap-1.5 text-[11px]",children:[(0,t.jsx)(o.Loader2,{className:"h-3 w-3 animate-spin"}),G?"Building…":"Deploying…"]}):F&&V?(0,t.jsxs)("a",{href:F,target:"_blank",rel:"noopener noreferrer",className:"bg-foreground text-background inline-flex h-7 shrink-0 cursor-pointer items-center gap-1.5 rounded-full px-3 text-[11px] font-semibold transition-opacity hover:opacity-80",children:[(0,t.jsx)(g.ExternalLink,{className:"h-3 w-3"}),"Open live"]}):K?(0,t.jsxs)("button",{type:"button",onClick:ee,className:"inline-flex h-7 shrink-0 cursor-pointer items-center gap-1.5 rounded-full bg-amber-500 px-3 text-[11px] font-semibold text-white transition-opacity hover:opacity-80",children:[(0,t.jsx)(y.Play,{className:"h-3 w-3 fill-current"}),"Continue"]}):q?(0,t.jsxs)("button",{type:"button",onClick:ee,className:"bg-destructive inline-flex h-7 shrink-0 cursor-pointer items-center gap-1.5 rounded-full px-3 text-[11px] font-semibold text-white transition-opacity hover:opacity-80",children:[(0,t.jsx)(m.ArrowRight,{className:"h-3 w-3"}),"View error"]}):(0,t.jsxs)("button",{type:"button",onClick:ee,className:"bg-foreground text-background inline-flex h-7 shrink-0 cursor-pointer items-center gap-1.5 rounded-full px-3 text-[11px] font-semibold transition-opacity hover:opacity-80",children:[(0,t.jsx)(m.ArrowRight,{className:"h-3 w-3"}),"Open"]})]})]}),(0,t.jsx)(S.Dialog,{open:d,onOpenChange:c,children:(0,t.jsxs)(S.DialogContent,{className:"max-w-xs",children:[(0,t.jsxs)(S.DialogHeader,{children:[(0,t.jsx)(S.DialogTitle,{children:"Delete application?"}),(0,t.jsxs)(S.DialogDescription,{children:["This will permanently remove ",(0,t.jsx)("strong",{children:i.name}),"."]})]}),(0,t.jsxs)(S.DialogFooter,{className:"grid grid-cols-2 gap-2 sm:flex-none",children:[(0,t.jsx)(S.DialogClose,{asChild:!0,children:(0,t.jsx)(A.Button,{variant:"outline",children:"Cancel"})}),(0,t.jsx)(A.Button,{variant:"destructive",onClick:async()=>{c(!1);let e=await (0,L.deleteApplication)(i.id);e.error?D.toast.error("Failed to delete",{description:e.error}):(D.toast.success("Application deleted"),n.invalidateQueries({queryKey:["applications"]}))},children:"Delete"})]})]})})]})}var Z=e.i(508893);let V=(0,Z.createServerReference)("00a3d928a39e0706a7d619dcbbcaa2254aba5ae1ea",Z.callServer,void 0,Z.findSourceMapURL,"listDeployments");function W({className:l}){let s=(0,a.useRouter)(),[d,c]=(0,r.useState)(!1),{data:x=[],isLoading:m}=(0,i.useQuery)({queryKey:["applications"],queryFn:async()=>{let e=await fetch("/api/applications");if(!e.ok)throw Error("Failed to fetch applications");return e.json()},staleTime:3e4}),{data:g=[]}=(0,i.useQuery)({queryKey:["deployments","all"],queryFn:()=>V(),staleTime:0,refetchInterval:3e3}),f=(0,r.useMemo)(()=>[...x].sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()),[x]);return(0,t.jsx)(u.DeploymentStatusProvider,{initialDeployments:g,children:(0,t.jsxs)("div",{"data-testid":"applications-page-client",className:(0,p.cn)("relative flex min-h-full flex-col",l),children:[(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-4 p-6",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(n.LayoutGrid,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:"Applications"}),m?null:(0,t.jsxs)("span",{className:"text-muted-foreground text-[10px]",children:[x.length," ",1===x.length?"app":"apps"]})]}),m?(0,t.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,t.jsx)(o.Loader2,{className:"text-muted-foreground h-5 w-5 animate-spin"})}):0===f.length?(0,t.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,t.jsx)(h.ControlCenterEmptyState,{onApplicationCreated:e=>{s.push(`/application/${e}`)}})}):(0,t.jsxs)("div",{"data-testid":"applications-page-grid",className:"grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",children:[(0,t.jsx)(U,{onDescribe:()=>c(!0),onOpenLocalDirectory:async()=>{let{pickFolder:t}=await e.A(633405),r=await t();if(!r)return;let{adoptLocalDirectory:a}=await e.A(743797),i=await a({repositoryPath:r});i.applicationId&&s.push(`/application/${i.applicationId}`)},onImportGitHub:()=>window.dispatchEvent(new CustomEvent("shep:open-github-import"))}),f.map(e=>(0,t.jsx)(H,{application:e},e.id))]})]}),d?(0,t.jsx)("div",{className:"absolute inset-0 z-40",children:(0,t.jsx)(h.ControlCenterEmptyState,{onApplicationCreated:e=>{s.push(`/application/${e}`)},onClose:()=>c(!1),className:"bg-background"})}):null]})})}function U({onDescribe:e,onOpenLocalDirectory:r,onImportGitHub:a}){let i=[{icon:(0,t.jsx)(c.Sparkles,{className:"h-4 w-4"}),label:"Describe with AI",description:"Tell Shep what to build — it scaffolds + ships",onClick:e,accent:"text-indigo-500 bg-indigo-100 dark:bg-indigo-900/60"},...r?[{icon:(0,t.jsx)(l.FolderOpen,{className:"h-4 w-4"}),label:"Open local project",description:"Pick an existing folder and continue from there",onClick:r,accent:"text-amber-600 bg-amber-100 dark:bg-amber-900/40"}]:[],...a?[{icon:(0,t.jsx)(s.Github,{className:"h-4 w-4"}),label:"Import from GitHub",description:"Connect an existing repo to manage here",onClick:a,accent:"text-foreground bg-muted"}]:[]];return(0,t.jsxs)("div",{className:(0,p.cn)("group relative flex cursor-pointer flex-col overflow-hidden rounded-sm border-2","border-dashed border-indigo-200 bg-transparent transition-all duration-200","hover:border-indigo-400 hover:bg-indigo-500/[0.03]","dark:border-indigo-900 dark:hover:border-indigo-700","min-h-[280px]"),onClick:e,children:[(0,t.jsxs)("div",{className:(0,p.cn)("absolute inset-0 flex flex-col items-center justify-center gap-3","transition-opacity duration-200 group-hover:opacity-0","pointer-events-none"),children:[(0,t.jsx)("div",{className:"flex h-11 w-11 items-center justify-center rounded-full bg-indigo-100 text-indigo-500 dark:bg-indigo-900/60 dark:text-indigo-400",children:(0,t.jsx)(d.Plus,{className:"h-5 w-5 stroke-[2]"})}),(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("p",{className:"text-foreground text-sm font-semibold",children:"New application"}),(0,t.jsx)("p",{className:"text-muted-foreground mt-0.5 text-[11px]",children:"Click to get started"})]})]}),(0,t.jsxs)("div",{className:(0,p.cn)("absolute inset-0 flex flex-col justify-center gap-1.5 px-4","translate-y-3 opacity-0 transition-all duration-200","group-hover:translate-y-0 group-hover:opacity-100"),children:[(0,t.jsx)("p",{className:"text-muted-foreground mb-1 px-1 text-[10px] font-medium tracking-wide uppercase",children:"How would you like to start?"}),i.map(e=>(0,t.jsxs)("button",{type:"button",onClick:t=>{t.stopPropagation(),e.onClick()},className:(0,p.cn)("flex w-full cursor-pointer items-center gap-3 rounded-lg px-3 py-2.5 text-left","border-border/60 bg-background/80 border transition-all duration-150","hover:border-indigo-300 hover:bg-indigo-50 dark:hover:border-indigo-700 dark:hover:bg-indigo-950/40"),children:[(0,t.jsx)("span",{className:(0,p.cn)("flex h-7 w-7 shrink-0 items-center justify-center rounded-md",e.accent),children:e.icon}),(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("div",{className:"text-foreground text-[12px] font-semibold",children:e.label}),(0,t.jsx)("div",{className:"text-muted-foreground truncate text-[10px]",children:e.description})]})]},e.label))]})]})}e.s(["ApplicationsPageClient",()=>W],453721)},127062,e=>{e.v(t=>Promise.all(["static/chunks/4fdf36904f5421a6.js"].map(t=>e.l(t))).then(()=>t(617841)))},633405,e=>{e.v(e=>Promise.resolve().then(()=>e(478521)))},743797,e=>{e.v(t=>Promise.all(["static/chunks/59004c65d552581c.js"].map(t=>e.l(t))).then(()=>t(868662)))}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,602287,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(90033),r=e.i(860253),i=e.i(131777);let l=s.Dialog.Root,n=s.Dialog.Trigger,o=s.Dialog.Portal,d=s.Dialog.Close,c=a.forwardRef(({className:e,onClick:a,...r},l)=>(0,t.jsx)(s.Dialog.Overlay,{ref:l,className:(0,i.cn)("data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 fixed inset-0 z-50 bg-black/80 duration-150",e),onClick:e=>{e.stopPropagation(),a?.(e)},...r}));c.displayName=s.Dialog.Overlay.displayName;let u=a.forwardRef(({className:e,children:a,...l},n)=>(0,t.jsxs)(o,{children:[(0,t.jsx)(c,{}),(0,t.jsxs)(s.Dialog.Content,{ref:n,className:(0,i.cn)("bg-background data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg duration-150 sm:rounded-lg",e),...l,children:[a,(0,t.jsxs)(s.Dialog.Close,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute end-4 top-4 cursor-pointer rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none",children:[(0,t.jsx)(r.X,{className:"h-4 w-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]}));u.displayName=s.Dialog.Content.displayName;let g=({className:e,...a})=>(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col space-y-1.5 text-center sm:text-start",e),...a});g.displayName="DialogHeader";let m=({className:e,...a})=>(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...a});m.displayName="DialogFooter";let p=a.forwardRef(({className:e,...a},r)=>(0,t.jsx)(s.Dialog.Title,{ref:r,className:(0,i.cn)("text-lg leading-none font-semibold tracking-tight",e),...a}));p.displayName=s.Dialog.Title.displayName;let x=a.forwardRef(({className:e,...a},r)=>(0,t.jsx)(s.Dialog.Description,{ref:r,className:(0,i.cn)("text-muted-foreground text-sm",e),...a}));x.displayName=s.Dialog.Description.displayName,e.s(["Dialog",()=>l,"DialogClose",()=>d,"DialogContent",()=>u,"DialogDescription",()=>x,"DialogFooter",()=>m,"DialogHeader",()=>g,"DialogTitle",()=>p,"DialogTrigger",()=>n])},48306,e=>{"use strict";var t=e.i(679606),a=e.i(131777);function s({className:e,...s}){return(0,t.jsx)("textarea",{"data-slot":"textarea",className:(0,a.cn)("placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input field-sizing-content min-h-[80px] w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...s})}e.s(["Textarea",()=>s])},141957,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(287620),r=a.forwardRef((e,a)=>(0,t.jsx)(s.Primitive.label,{...e,ref:a,onMouseDown:t=>{t.target.closest("button, input, select, textarea")||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));r.displayName="Label",e.s(["Label",()=>r,"Root",()=>r],127572);var i=e.i(127572),i=i,l=e.i(294237),n=e.i(131777);let o=(0,l.cva)("text-sm leading-none font-medium peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),d=a.forwardRef(({className:e,...a},s)=>(0,t.jsx)(i.Root,{ref:s,className:(0,n.cn)(o(),e),...a}));d.displayName=i.Root.displayName,e.s(["Label",()=>d],141957)},81846,e=>{"use strict";var t=e.i(679606),a=e.i(294237),s=e.i(131777);let r=(0,a.cva)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-none",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function i({className:e,variant:a,...i}){return(0,t.jsx)("div",{className:(0,s.cn)(r({variant:a}),e),...i})}e.s(["Badge",()=>i])},853756,e=>{"use strict";let t=(0,e.i(903645).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);e.s(["Sparkles",()=>t],853756)},383379,e=>{"use strict";let t=(0,e.i(903645).default)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);e.s(["ArrowRight",()=>t],383379)},123620,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(294237),r=e.i(131777);let i=(0,s.cva)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg]:absolute [&>svg]:top-4 [&>svg]:start-4 [&>svg]:text-foreground [&>svg+div]:translate-y-[-3px] [&>svg~*]:ps-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),l=a.forwardRef(({className:e,variant:a,...s},l)=>(0,t.jsx)("div",{ref:l,role:"alert",className:(0,r.cn)(i({variant:a}),e),...s}));l.displayName="Alert",a.forwardRef(({className:e,...a},s)=>(0,t.jsx)("h5",{ref:s,className:(0,r.cn)("mb-1 leading-none font-medium tracking-tight",e),...a})).displayName="AlertTitle";let n=a.forwardRef(({className:e,...a},s)=>(0,t.jsx)("div",{ref:s,className:(0,r.cn)("text-sm [&_p]:leading-relaxed",e),...a}));n.displayName="AlertDescription",e.s(["Alert",()=>l,"AlertDescription",()=>n])},270198,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(256460),r=e.i(273889),i=e.i(860253),l=e.i(735364);function n({id:e,title:n,description:o,ctaLabel:d,ctaHref:c,forceVisible:u}){let g=`shep:onboarding:${e}`,[m,p]=(0,a.useState)(!1),[x,f]=(0,a.useState)(!0);return((0,a.useEffect)(()=>{if(p(!0),u)return void f(!0);try{let e=window.localStorage.getItem(g);f("1"!==e)}catch{f(!0)}},[u,g]),m&&x)?(0,t.jsxs)("div",{className:"bg-muted/40 flex items-start gap-3 rounded-lg border p-4","data-testid":`welcome-banner-${e}`,children:[(0,t.jsx)("div",{className:"bg-primary/10 text-primary flex h-9 w-9 shrink-0 items-center justify-center rounded-md",children:(0,t.jsx)(r.GraduationCap,{className:"size-4"})}),(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:n}),(0,t.jsx)("p",{className:"text-muted-foreground text-sm",children:o})]}),c&&d?(0,t.jsx)("div",{children:(0,t.jsx)(l.Button,{asChild:!0,size:"sm",variant:"outline",children:(0,t.jsx)(s.default,{href:c,"data-testid":`welcome-banner-${e}-cta`,children:d})})}):null]}),(0,t.jsx)(l.Button,{variant:"ghost",size:"icon",className:"size-7 shrink-0",onClick:function(){if(f(!1),!u)try{window.localStorage.setItem(g,"1")}catch{}},"aria-label":"Dismiss this hint","data-testid":`welcome-banner-${e}-dismiss`,children:(0,t.jsx)(i.X,{className:"size-4"})})]}):null}e.s(["WelcomeBanner",()=>n])},611660,e=>{"use strict";var t=e.i(679606),a=e.i(256460),s=e.i(926370),r=e.i(383379),i=e.i(853756),l=e.i(81846);function n({agents:e}){return 0===e.length?(0,t.jsxs)("div",{className:"bg-muted/30 rounded-lg border border-dashed p-6",children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:"No agents registered"}),(0,t.jsxs)("p",{className:"text-muted-foreground text-sm",children:["The built-in prompt registry is empty — register slots in",(0,t.jsx)("code",{className:"bg-muted mx-1 rounded px-1 py-0.5 text-xs",children:"builtin-prompt-registry.ts"}),"to expose agents in this editor."]})]}):(0,t.jsx)("ul",{className:"flex flex-col divide-y rounded-lg border","data-testid":"agent-list",children:e.map(e=>(0,t.jsxs)("li",{className:"flex items-center gap-3 px-3 py-2","data-testid":`agent-row-${e.agentType}`,children:[(0,t.jsx)("div",{className:"bg-primary/10 text-primary flex h-8 w-8 items-center justify-center rounded-md",children:e.isCustom?(0,t.jsx)(i.Sparkles,{className:"size-4","aria-hidden":!0}):(0,t.jsx)(s.Bot,{className:"size-4","aria-hidden":!0})}),(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("p",{className:"truncate text-sm font-medium",children:e.displayName??e.agentType}),e.isCustom?(0,t.jsx)(l.Badge,{variant:"secondary",className:"shrink-0",children:"Custom"}):null]}),(0,t.jsxs)("p",{className:"text-muted-foreground text-xs",children:[e.isCustom?e.agentType:null,e.isCustom?" · ":"",e.promptCount," prompt",1===e.promptCount?"":"s",e.overrideCount>0?` \xb7 ${e.overrideCount} override${1===e.overrideCount?"":"s"}`:""]})]}),(0,t.jsxs)(a.default,{href:`/agents/${e.agentType}`,className:"text-primary inline-flex shrink-0 items-center gap-1 text-xs hover:underline",children:["Edit",(0,t.jsx)(r.ArrowRight,{className:"size-3"})]})]},e.agentType))})}e.s(["AgentList",()=>n])},687639,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(711434),r=e.i(3214),i=e.i(123620),l=e.i(735364),n=e.i(602287),o=e.i(698127),d=e.i(141957),c=e.i(48306),u=e.i(508893);let g=(0,u.createServerReference)("403f40d9d33418d1c706cd66423fd46e9a7c0d3969",u.callServer,void 0,u.findSourceMapURL,"createCustomAgent"),m=/^[a-z][a-z0-9-]{1,63}$/;function p({onCreateOverride:e,initialOpen:u,onNavigateOverride:p}){let x=(0,s.useRouter)(),[f,h]=(0,a.useState)(!!u),[v,b]=(0,a.useState)(""),[y,j]=(0,a.useState)(""),[N,w]=(0,a.useState)(""),[D,C]=(0,a.useState)("system"),[k,S]=(0,a.useState)(""),[T,R]=(0,a.useState)(null),[z,A]=(0,a.useTransition)();function B(){b(""),j(""),w(""),C("system"),S(""),R(null)}let L=m.test(v),P=L&&y.trim().length>0&&N.trim().length>0&&!z;return(0,t.jsxs)(n.Dialog,{open:f,onOpenChange:e=>{h(e),e||B()},children:[(0,t.jsx)(n.DialogTrigger,{asChild:!0,children:(0,t.jsxs)(l.Button,{"data-testid":"create-agent-trigger",children:[(0,t.jsx)(r.Plus,{className:"size-4"}),"New agent"]})}),(0,t.jsxs)(n.DialogContent,{className:"max-w-xl","data-testid":"create-agent-dialog",children:[(0,t.jsxs)(n.DialogHeader,{children:[(0,t.jsx)(n.DialogTitle,{children:"Create custom agent"}),(0,t.jsx)(n.DialogDescription,{children:"Stand up a new agent type with its own prompt slots and editable graph. Built-in agents stay untouched."})]}),(0,t.jsxs)("form",{className:"flex flex-col gap-4",onSubmit:function(t){t.preventDefault(),P&&(R(null),A(async()=>{let t=await (e??g)({agentType:v,name:y,description:N,...D.trim()&&k.length>0?{initialPromptId:D,initialPromptBody:k}:{}});if(!t.ok)return void R(t.error??"Failed to create agent");let a=t.agentType??v;B(),h(!1);let s=`/agents/${a}`;p?p(s):x.push(s)}))},children:[(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsx)(d.Label,{htmlFor:"create-agent-type",children:"Stable type id"}),(0,t.jsx)(o.Input,{id:"create-agent-type","data-testid":"create-agent-type",placeholder:"e.g. code-review",value:v,onChange:e=>b(e.target.value.toLowerCase()),disabled:z,autoComplete:"off","aria-invalid":v.length>0&&!L}),(0,t.jsxs)("p",{className:"text-muted-foreground text-xs",children:["kebab-case, starts with a letter, max 64 chars (matches"," ",(0,t.jsx)("code",{className:"bg-muted rounded px-1",children:"/^[a-z][a-z0-9-]+$/"}),")"]})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsx)(d.Label,{htmlFor:"create-agent-name",children:"Display name"}),(0,t.jsx)(o.Input,{id:"create-agent-name","data-testid":"create-agent-name",placeholder:"e.g. Code Review Agent",value:y,onChange:e=>j(e.target.value),disabled:z})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsx)(d.Label,{htmlFor:"create-agent-description",children:"Description"}),(0,t.jsx)(o.Input,{id:"create-agent-description","data-testid":"create-agent-description",placeholder:"What does this agent do?",value:N,onChange:e=>w(e.target.value),disabled:z})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-2 rounded-md border border-dashed p-3",children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:"Seed first prompt (optional)"}),(0,t.jsx)(d.Label,{htmlFor:"create-agent-prompt-id",children:"Prompt slot id"}),(0,t.jsx)(o.Input,{id:"create-agent-prompt-id","data-testid":"create-agent-prompt-id",value:D,onChange:e=>C(e.target.value),disabled:z,placeholder:"e.g. system, plan.system"}),(0,t.jsx)(d.Label,{htmlFor:"create-agent-prompt-body",children:"Prompt body"}),(0,t.jsx)(c.Textarea,{id:"create-agent-prompt-body","data-testid":"create-agent-prompt-body",value:k,onChange:e=>S(e.target.value),rows:5,className:"font-mono text-xs",disabled:z,placeholder:"System prompt the agent will run with…"})]}),T?(0,t.jsx)(i.Alert,{variant:"destructive","data-testid":"create-agent-error",children:(0,t.jsx)(i.AlertDescription,{children:T})}):null,(0,t.jsx)(n.DialogFooter,{children:(0,t.jsx)(l.Button,{type:"submit",disabled:!P,"data-testid":"create-agent-submit",children:z?"Creating…":"Create agent"})})]})]})]})}e.s(["CreateAgentDialog",()=>p],687639)}]);
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,602287,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(90033),r=e.i(860253),i=e.i(131777);let l=s.Dialog.Root,n=s.Dialog.Trigger,o=s.Dialog.Portal,d=s.Dialog.Close,c=a.forwardRef(({className:e,onClick:a,...r},l)=>(0,t.jsx)(s.Dialog.Overlay,{ref:l,className:(0,i.cn)("data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 fixed inset-0 z-50 bg-black/80 duration-150",e),onClick:e=>{e.stopPropagation(),a?.(e)},...r}));c.displayName=s.Dialog.Overlay.displayName;let u=a.forwardRef(({className:e,children:a,...l},n)=>(0,t.jsxs)(o,{children:[(0,t.jsx)(c,{}),(0,t.jsxs)(s.Dialog.Content,{ref:n,className:(0,i.cn)("bg-background data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg duration-150 sm:rounded-lg",e),...l,children:[a,(0,t.jsxs)(s.Dialog.Close,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute end-4 top-4 cursor-pointer rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none",children:[(0,t.jsx)(r.X,{className:"h-4 w-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]}));u.displayName=s.Dialog.Content.displayName;let g=({className:e,...a})=>(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col space-y-1.5 text-center sm:text-start",e),...a});g.displayName="DialogHeader";let m=({className:e,...a})=>(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...a});m.displayName="DialogFooter";let p=a.forwardRef(({className:e,...a},r)=>(0,t.jsx)(s.Dialog.Title,{ref:r,className:(0,i.cn)("text-lg leading-none font-semibold tracking-tight",e),...a}));p.displayName=s.Dialog.Title.displayName;let x=a.forwardRef(({className:e,...a},r)=>(0,t.jsx)(s.Dialog.Description,{ref:r,className:(0,i.cn)("text-muted-foreground text-sm",e),...a}));x.displayName=s.Dialog.Description.displayName,e.s(["Dialog",()=>l,"DialogClose",()=>d,"DialogContent",()=>u,"DialogDescription",()=>x,"DialogFooter",()=>m,"DialogHeader",()=>g,"DialogTitle",()=>p,"DialogTrigger",()=>n])},48306,e=>{"use strict";var t=e.i(679606),a=e.i(131777);function s({className:e,...s}){return(0,t.jsx)("textarea",{"data-slot":"textarea",className:(0,a.cn)("placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input field-sizing-content min-h-[80px] w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...s})}e.s(["Textarea",()=>s])},141957,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(287620),r=a.forwardRef((e,a)=>(0,t.jsx)(s.Primitive.label,{...e,ref:a,onMouseDown:t=>{t.target.closest("button, input, select, textarea")||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));r.displayName="Label",e.s(["Label",()=>r,"Root",()=>r],127572);var i=e.i(127572),i=i,l=e.i(294237),n=e.i(131777);let o=(0,l.cva)("text-sm leading-none font-medium peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),d=a.forwardRef(({className:e,...a},s)=>(0,t.jsx)(i.Root,{ref:s,className:(0,n.cn)(o(),e),...a}));d.displayName=i.Root.displayName,e.s(["Label",()=>d],141957)},81846,e=>{"use strict";var t=e.i(679606),a=e.i(294237),s=e.i(131777);let r=(0,a.cva)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-none",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function i({className:e,variant:a,...i}){return(0,t.jsx)("div",{className:(0,s.cn)(r({variant:a}),e),...i})}e.s(["Badge",()=>i])},853756,e=>{"use strict";let t=(0,e.i(903645).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);e.s(["Sparkles",()=>t],853756)},383379,e=>{"use strict";let t=(0,e.i(903645).default)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);e.s(["ArrowRight",()=>t],383379)},123620,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(294237),r=e.i(131777);let i=(0,s.cva)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg]:absolute [&>svg]:top-4 [&>svg]:start-4 [&>svg]:text-foreground [&>svg+div]:translate-y-[-3px] [&>svg~*]:ps-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),l=a.forwardRef(({className:e,variant:a,...s},l)=>(0,t.jsx)("div",{ref:l,role:"alert",className:(0,r.cn)(i({variant:a}),e),...s}));l.displayName="Alert",a.forwardRef(({className:e,...a},s)=>(0,t.jsx)("h5",{ref:s,className:(0,r.cn)("mb-1 leading-none font-medium tracking-tight",e),...a})).displayName="AlertTitle";let n=a.forwardRef(({className:e,...a},s)=>(0,t.jsx)("div",{ref:s,className:(0,r.cn)("text-sm [&_p]:leading-relaxed",e),...a}));n.displayName="AlertDescription",e.s(["Alert",()=>l,"AlertDescription",()=>n])},270198,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(256460),r=e.i(273889),i=e.i(860253),l=e.i(735364);function n({id:e,title:n,description:o,ctaLabel:d,ctaHref:c,forceVisible:u}){let g=`shep:onboarding:${e}`,[m,p]=(0,a.useState)(!1),[x,f]=(0,a.useState)(!0);return((0,a.useEffect)(()=>{if(p(!0),u)return void f(!0);try{let e=window.localStorage.getItem(g);f("1"!==e)}catch{f(!0)}},[u,g]),m&&x)?(0,t.jsxs)("div",{className:"bg-muted/40 flex items-start gap-3 rounded-lg border p-4","data-testid":`welcome-banner-${e}`,children:[(0,t.jsx)("div",{className:"bg-primary/10 text-primary flex h-9 w-9 shrink-0 items-center justify-center rounded-md",children:(0,t.jsx)(r.GraduationCap,{className:"size-4"})}),(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:n}),(0,t.jsx)("p",{className:"text-muted-foreground text-sm",children:o})]}),c&&d?(0,t.jsx)("div",{children:(0,t.jsx)(l.Button,{asChild:!0,size:"sm",variant:"outline",children:(0,t.jsx)(s.default,{href:c,"data-testid":`welcome-banner-${e}-cta`,children:d})})}):null]}),(0,t.jsx)(l.Button,{variant:"ghost",size:"icon",className:"size-7 shrink-0",onClick:function(){if(f(!1),!u)try{window.localStorage.setItem(g,"1")}catch{}},"aria-label":"Dismiss this hint","data-testid":`welcome-banner-${e}-dismiss`,children:(0,t.jsx)(i.X,{className:"size-4"})})]}):null}e.s(["WelcomeBanner",()=>n])},611660,e=>{"use strict";var t=e.i(679606),a=e.i(256460),s=e.i(926370),r=e.i(383379),i=e.i(853756),l=e.i(81846);function n({agents:e}){return 0===e.length?(0,t.jsxs)("div",{className:"bg-muted/30 rounded-lg border border-dashed p-6",children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:"No agents registered"}),(0,t.jsxs)("p",{className:"text-muted-foreground text-sm",children:["The built-in prompt registry is empty — register slots in",(0,t.jsx)("code",{className:"bg-muted mx-1 rounded px-1 py-0.5 text-xs",children:"builtin-prompt-registry.ts"}),"to expose agents in this editor."]})]}):(0,t.jsx)("ul",{className:"flex flex-col divide-y rounded-lg border","data-testid":"agent-list",children:e.map(e=>(0,t.jsxs)("li",{className:"flex items-center gap-3 px-3 py-2","data-testid":`agent-row-${e.agentType}`,children:[(0,t.jsx)("div",{className:"bg-primary/10 text-primary flex h-8 w-8 items-center justify-center rounded-md",children:e.isCustom?(0,t.jsx)(i.Sparkles,{className:"size-4","aria-hidden":!0}):(0,t.jsx)(s.Bot,{className:"size-4","aria-hidden":!0})}),(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("p",{className:"truncate text-sm font-medium",children:e.displayName??e.agentType}),e.isCustom?(0,t.jsx)(l.Badge,{variant:"secondary",className:"shrink-0",children:"Custom"}):null]}),(0,t.jsxs)("p",{className:"text-muted-foreground text-xs",children:[e.isCustom?e.agentType:null,e.isCustom?" · ":"",e.promptCount," prompt",1===e.promptCount?"":"s",e.overrideCount>0?` \xb7 ${e.overrideCount} override${1===e.overrideCount?"":"s"}`:""]})]}),(0,t.jsxs)(a.default,{href:`/agents/${e.agentType}`,className:"text-primary inline-flex shrink-0 items-center gap-1 text-xs hover:underline",children:["Edit",(0,t.jsx)(r.ArrowRight,{className:"size-3"})]})]},e.agentType))})}e.s(["AgentList",()=>n])},687639,e=>{"use strict";var t=e.i(679606),a=e.i(152155),s=e.i(711434),r=e.i(3214),i=e.i(123620),l=e.i(735364),n=e.i(602287),o=e.i(698127),d=e.i(141957),c=e.i(48306),u=e.i(508893);let g=(0,u.createServerReference)("40a8f61e163ae3d1d8a6ab1517c364b6ccdd9db694",u.callServer,void 0,u.findSourceMapURL,"createCustomAgent"),m=/^[a-z][a-z0-9-]{1,63}$/;function p({onCreateOverride:e,initialOpen:u,onNavigateOverride:p}){let x=(0,s.useRouter)(),[f,h]=(0,a.useState)(!!u),[v,b]=(0,a.useState)(""),[y,j]=(0,a.useState)(""),[N,w]=(0,a.useState)(""),[D,C]=(0,a.useState)("system"),[k,S]=(0,a.useState)(""),[T,R]=(0,a.useState)(null),[z,A]=(0,a.useTransition)();function B(){b(""),j(""),w(""),C("system"),S(""),R(null)}let L=m.test(v),P=L&&y.trim().length>0&&N.trim().length>0&&!z;return(0,t.jsxs)(n.Dialog,{open:f,onOpenChange:e=>{h(e),e||B()},children:[(0,t.jsx)(n.DialogTrigger,{asChild:!0,children:(0,t.jsxs)(l.Button,{"data-testid":"create-agent-trigger",children:[(0,t.jsx)(r.Plus,{className:"size-4"}),"New agent"]})}),(0,t.jsxs)(n.DialogContent,{className:"max-w-xl","data-testid":"create-agent-dialog",children:[(0,t.jsxs)(n.DialogHeader,{children:[(0,t.jsx)(n.DialogTitle,{children:"Create custom agent"}),(0,t.jsx)(n.DialogDescription,{children:"Stand up a new agent type with its own prompt slots and editable graph. Built-in agents stay untouched."})]}),(0,t.jsxs)("form",{className:"flex flex-col gap-4",onSubmit:function(t){t.preventDefault(),P&&(R(null),A(async()=>{let t=await (e??g)({agentType:v,name:y,description:N,...D.trim()&&k.length>0?{initialPromptId:D,initialPromptBody:k}:{}});if(!t.ok)return void R(t.error??"Failed to create agent");let a=t.agentType??v;B(),h(!1);let s=`/agents/${a}`;p?p(s):x.push(s)}))},children:[(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsx)(d.Label,{htmlFor:"create-agent-type",children:"Stable type id"}),(0,t.jsx)(o.Input,{id:"create-agent-type","data-testid":"create-agent-type",placeholder:"e.g. code-review",value:v,onChange:e=>b(e.target.value.toLowerCase()),disabled:z,autoComplete:"off","aria-invalid":v.length>0&&!L}),(0,t.jsxs)("p",{className:"text-muted-foreground text-xs",children:["kebab-case, starts with a letter, max 64 chars (matches"," ",(0,t.jsx)("code",{className:"bg-muted rounded px-1",children:"/^[a-z][a-z0-9-]+$/"}),")"]})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsx)(d.Label,{htmlFor:"create-agent-name",children:"Display name"}),(0,t.jsx)(o.Input,{id:"create-agent-name","data-testid":"create-agent-name",placeholder:"e.g. Code Review Agent",value:y,onChange:e=>j(e.target.value),disabled:z})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,t.jsx)(d.Label,{htmlFor:"create-agent-description",children:"Description"}),(0,t.jsx)(o.Input,{id:"create-agent-description","data-testid":"create-agent-description",placeholder:"What does this agent do?",value:N,onChange:e=>w(e.target.value),disabled:z})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-2 rounded-md border border-dashed p-3",children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:"Seed first prompt (optional)"}),(0,t.jsx)(d.Label,{htmlFor:"create-agent-prompt-id",children:"Prompt slot id"}),(0,t.jsx)(o.Input,{id:"create-agent-prompt-id","data-testid":"create-agent-prompt-id",value:D,onChange:e=>C(e.target.value),disabled:z,placeholder:"e.g. system, plan.system"}),(0,t.jsx)(d.Label,{htmlFor:"create-agent-prompt-body",children:"Prompt body"}),(0,t.jsx)(c.Textarea,{id:"create-agent-prompt-body","data-testid":"create-agent-prompt-body",value:k,onChange:e=>S(e.target.value),rows:5,className:"font-mono text-xs",disabled:z,placeholder:"System prompt the agent will run with…"})]}),T?(0,t.jsx)(i.Alert,{variant:"destructive","data-testid":"create-agent-error",children:(0,t.jsx)(i.AlertDescription,{children:T})}):null,(0,t.jsx)(n.DialogFooter,{children:(0,t.jsx)(l.Button,{type:"submit",disabled:!P,"data-testid":"create-agent-submit",children:z?"Creating…":"Create agent"})})]})]})]})}e.s(["CreateAgentDialog",()=>p],687639)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,338573,e=>{"use strict";let t=(0,e.i(903645).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>t],338573)},730702,e=>{"use strict";let t=(0,e.i(903645).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",()=>t],730702)},724042,e=>{"use strict";let t=(0,e.i(903645).default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);e.s(["Play",()=>t],724042)},873504,634087,142896,481605,e=>{"use strict";var t=e.i(679606),r=e.i(152155),a=e.i(317406),s=e.i(508893);let l=(0,s.createServerReference)("40aa1efa0fed8941c16c9537ba0c5d988cf13fecaf",s.callServer,void 0,s.findSourceMapURL,"deployFeature"),n=(0,s.createServerReference)("403a844cbb36e5d50051fe552f050ed35a8b88f317",s.callServer,void 0,s.findSourceMapURL,"deployRepository");e.s(["deployRepository",()=>n],634087);let i=(0,s.createServerReference)("40559cc32878be443a5d902e563fa65ac29566c575",s.callServer,void 0,s.findSourceMapURL,"deployApplication"),o=(0,s.createServerReference)("403c93928208c54fe25784ff60dcb073f25d1055c1",s.callServer,void 0,s.findSourceMapURL,"stopDeployment");e.s(["stopDeployment",()=>o],142896);let c=(0,s.createServerReference)("402a545f24583952d99d18566abf474dd10d07741b",s.callServer,void 0,s.findSourceMapURL,"getDeploymentStatus");var d=e.i(118354);let u={status:null,url:null,targetType:null,hydrated:!1,deployLoading:!1,stopLoading:!1,deployError:null};class p{entries=new Map;listeners=new Map;globalListeners=new Set;fullyHydrated=!1;isFullyHydrated(){return this.fullyHydrated}hydrate(e){let t=new Set;for(let r of e)t.add(r.targetId),this.update(r.targetId,{status:r.state,url:r.url,targetType:r.targetType,hydrated:!0});for(let[e,r]of this.entries)!t.has(e)&&r.hydrated&&null!==r.status?this.update(e,{status:null,url:null}):t.has(e)||r.hydrated||this.update(e,{hydrated:!0});this.fullyHydrated=!0}getEntry(e){return this.entries.get(e)??u}update(e,t){let r={...this.entries.get(e)??u,...t};this.entries.set(e,r),this.notify(e)}setStatus(e,t){null===t?this.update(e,{status:null,url:null,hydrated:!0}):this.update(e,{status:t.state,url:t.url,hydrated:!0})}subscribe(e,t){let r=this.listeners.get(e);return r||(r=new Set,this.listeners.set(e,r)),r.add(t),()=>{r?.delete(t),r?.size===0&&this.listeners.delete(e)}}subscribeAll(e){return this.globalListeners.add(e),()=>{this.globalListeners.delete(e)}}notify(e){let t=this.listeners.get(e);if(t)for(let e of t)e();for(let e of this.globalListeners)e()}}e.s(["DeploymentStatusStore",()=>p,"EMPTY_ENTRY",0,u],481605);let f=(0,d.createLogger)("[DeploymentStatusProvider]"),h=new Set([a.DeploymentState.Booting,a.DeploymentState.Ready]),x=(0,r.createContext)(null);function m({initialDeployments:e,children:s}){let d=(0,r.useRef)(null);d.current||(d.current=new p,d.current.hydrate(e));let u=d.current;(0,r.useEffect)(()=>{u.hydrate(e)},[e,u]);let m=(0,r.useRef)(new Map),g=(0,r.useCallback)(e=>{let t=m.current.get(e);t&&(clearInterval(t),m.current.delete(e))},[]),v=(0,r.useCallback)(e=>{if(m.current.has(e))return;let t=setInterval(async()=>{let t;try{t=await c(e)}catch(t){f.warn(`poll failed for "${e}"`,t),u.setStatus(e,null),g(e);return}if(!t||t.state===a.DeploymentState.Stopped){u.setStatus(e,null),g(e);return}u.setStatus(e,t)},3e3);m.current.set(e,t)},[u,g]);(0,r.useEffect)(()=>{let e=m.current,t=u.subscribeAll(()=>{for(let[t]of e){let e=u.getEntry(t);e.status&&h.has(e.status)||g(t)}});return()=>{for(let[,r]of(t(),e))clearInterval(r);e.clear()}},[u,g]);let y=(0,r.useCallback)(e=>{if(e&&!u.getEntry(e).hydrated){if(u.isFullyHydrated())return void u.update(e,{hydrated:!0});u.update(e,{hydrated:!0}),(async()=>{try{let t=await c(e);u.setStatus(e,t),t&&h.has(t.state)&&v(e)}catch(t){f.warn(`ensureHydrated failed for "${e}"`,t)}})()}},[u,v]),b=(0,r.useCallback)(async e=>{u.update(e.targetId,{deployLoading:!0,deployError:null});try{let t="feature"===e.targetType?await l(e.targetId):"application"===e.targetType?await i(e.targetId):await n(e.repositoryPath);if(!t.success)return void u.update(e.targetId,{deployLoading:!1,deployError:t.error??"An unexpected error occurred"});u.update(e.targetId,{deployLoading:!1,status:t.state??null,url:null,hydrated:!0,targetType:e.targetType}),v(e.targetId)}catch(r){let t=r instanceof Error?r.message:"An unexpected error occurred";u.update(e.targetId,{deployLoading:!1,deployError:t})}},[u,v]),k=(0,r.useCallback)(async e=>{if(e){u.update(e,{stopLoading:!0});try{(await o(e)).success?(g(e),u.update(e,{stopLoading:!1,status:null,url:null})):u.update(e,{stopLoading:!1})}catch(t){f.warn("stop error (non-critical)",t),u.update(e,{stopLoading:!1})}}},[u,g]),j=(0,r.useMemo)(()=>({store:u,deploy:b,stop:k,ensureHydrated:y}),[u,b,k,y]);return(0,t.jsx)(x.Provider,{value:j,children:s})}function g(){let e=(0,r.useContext)(x);if(!e)throw Error("useDeploymentStatusContext must be used within a <DeploymentStatusProvider>");return e}function v(){let e=(0,r.useContext)(x);return e||y}let y={store:new p,deploy:async()=>{},stop:async()=>{},ensureHydrated:()=>{}};e.s(["DeploymentStatusProvider",()=>m,"useDeploymentStatusContext",()=>g,"useDeploymentStatusContextOptional",()=>v],873504)},8537,e=>{"use strict";var t=e.i(152155),r=e.i(873504);function a(){}function s(e){let{store:s,deploy:l,stop:n,ensureHydrated:i}=(0,r.useDeploymentStatusContextOptional)(),o=e?.targetId??"",c=(0,t.useCallback)(e=>o?s.subscribe(o,e):a,[s,o]),d=(0,t.useCallback)(()=>o?s.getEntry(o):s.getEntry(""),[s,o]),u=(0,t.useSyncExternalStore)(c,d,d);return(0,t.useEffect)(()=>{o&&i(o)},[o,i]),{deploy:(0,t.useCallback)(async()=>{e&&await l(e)},[l,e]),stop:(0,t.useCallback)(async()=>{o&&await n(o)},[n,o]),deployLoading:u.deployLoading,stopLoading:u.stopLoading,deployError:u.deployError,status:u.status,url:u.url}}e.s(["useDeployAction",()=>s])},511495,872714,81803,917466,199348,e=>{"use strict";var t=e.i(679606),r=e.i(152155),a=e.i(948249),s=e.i(724042),l=e.i(64970),n=e.i(294237),i=e.i(131777),o=e.i(83428),c=e.i(151251),d=e.i(735364),u=e.i(808361);function p({label:e,onClick:r,loading:a,error:s,icon:l,iconOnly:n=!1,variant:p="outline",size:f="sm"}){let h=(0,u.useSoundAction)("click");return(0,t.jsxs)(d.Button,{variant:p,size:f,"aria-label":e,disabled:a,onClick:()=>{h.play(),r()},className:(0,i.cn)("gap-1.5",s&&"text-destructive hover:text-destructive",!s&&n&&"ghost"===p&&"text-muted-foreground cursor-pointer rounded-full transition-colors hover:text-blue-500"),children:[a?(0,t.jsx)(o.Loader2,{className:"size-4 animate-spin"}):s?(0,t.jsx)(c.CircleAlert,{className:"size-4"}):(0,t.jsx)(l,{className:"size-4"}),n?null:e]})}e.s(["ActionButton",()=>p],872714),e.s([],81803);var f=e.i(730702),h=e.i(338573),x=e.i(317406),m=e.i(102828),g=e.i(602287),v=e.i(508893);let y=(0,v.createServerReference)("40e827f64795e580b75e126ddfefa3a9a722da877c",v.callServer,void 0,v.findSourceMapURL,"getDeploymentLogs");function b({open:e,onOpenChange:a,targetId:s}){let{logs:l,isConnected:n}=function(e){let[t,a]=(0,r.useState)([]),[s,l]=(0,r.useState)(!1),n=(0,r.useRef)(null),i=(0,r.useCallback)(()=>{n.current&&(n.current.close(),n.current=null),l(!1)},[]);return(0,r.useEffect)(()=>{if(!e){a([]),l(!1);return}y(e).then(e=>{e&&a(e)}).catch(()=>{});let t=new EventSource(`/api/deployment-logs?targetId=${e}`);return n.current=t,t.onopen=()=>{l(!0)},t.addEventListener("log",e=>{let t=JSON.parse(e.data);a(e=>[...e,t])}),t.onerror=()=>{l(!1)},()=>{t.close(),n.current=null}},[e,i]),{logs:t,isConnected:s}}(e?s:null);return(0,t.jsx)(k,{open:e,onOpenChange:a,logs:l,isConnected:n})}function k({open:e,onOpenChange:a,logs:s,isConnected:l}){let n=(0,r.useRef)(null),i=(0,r.useRef)(!0),o=(0,r.useCallback)(()=>{let e=n.current;e&&(i.current=e.scrollTop+e.clientHeight>=e.scrollHeight-50)},[]);return(0,r.useEffect)(()=>{i.current&&n.current&&(n.current.scrollTop=n.current.scrollHeight)},[s]),(0,t.jsx)(g.Dialog,{open:e,onOpenChange:a,children:(0,t.jsxs)(g.DialogContent,{className:"flex h-[calc(100vh-48px)] max-h-[calc(100vh-48px)] w-full max-w-[calc(100vw-48px)] flex-col gap-0 bg-zinc-950 p-0 text-zinc-100 sm:rounded-lg","aria-describedby":void 0,children:[(0,t.jsxs)(g.DialogHeader,{className:"flex flex-row items-center justify-between border-b border-zinc-800 px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(h.Terminal,{className:"h-4 w-4 text-zinc-400"}),(0,t.jsx)(g.DialogTitle,{className:"text-sm font-medium text-zinc-100",children:"Server Logs"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 pe-8",children:[(0,t.jsx)("span",{className:`inline-block h-2 w-2 rounded-full ${l?"bg-green-500":"bg-zinc-500"}`}),(0,t.jsx)("span",{className:"text-xs text-zinc-400",children:l?"Connected":"Disconnected"})]})]}),(0,t.jsxs)("div",{ref:n,onScroll:o,className:"flex-1 overflow-auto p-4 font-mono text-sm leading-relaxed",children:[0===s.length?(0,t.jsx)("p",{className:"text-zinc-500",children:"Waiting for log output..."}):s.map(e=>(0,t.jsx)(j,{entry:e},`${e.timestamp}-${e.stream}-${e.line}`)),!l&&s.length>0&&(0,t.jsx)("div",{className:"mt-2 border-t border-zinc-800 pt-2 text-zinc-500",children:"[Server stopped]"})]})]})})}function j({entry:e}){return(0,t.jsx)("div",{"data-stream":e.stream,className:"stderr"===e.stream?"text-red-400":"text-zinc-200",children:(0,t.jsx)("span",{className:"break-all whitespace-pre-wrap",children:e.line})})}let S="text-muted-foreground hover:bg-foreground/8 hover:text-foreground inline-flex size-7 items-center justify-center rounded-[3px]";function w({status:e,url:a,targetId:s}){let[l,n]=(0,r.useState)(!1),i=s&&(e===x.DeploymentState.Booting||e===x.DeploymentState.Ready);switch(e){case x.DeploymentState.Booting:return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex items-center gap-1 pl-1",children:[(0,t.jsx)(o.Loader2,{className:"size-3 animate-spin text-blue-500"}),(0,t.jsx)("span",{className:"text-muted-foreground text-[11px]",children:"Starting..."}),i?(0,t.jsx)(m.TooltipProvider,{delayDuration:300,children:(0,t.jsxs)(m.Tooltip,{children:[(0,t.jsx)(m.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button","aria-label":"View server logs",className:S,onClick:e=>{e.stopPropagation(),n(!0)},children:(0,t.jsx)(h.Terminal,{className:"size-3.5"})})}),(0,t.jsx)(m.TooltipContent,{side:"bottom",className:"text-xs",children:"Server logs"})]})}):null]}),i?(0,t.jsx)(b,{open:l,onOpenChange:n,targetId:s}):null]});case x.DeploymentState.Ready:return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex translate-y-px items-center gap-1 pl-1",children:[(0,t.jsx)("span",{className:"inline-block size-1.5 rounded-full bg-green-500"}),a?(0,t.jsxs)("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-0.5 text-[11px] text-green-600 hover:text-green-500 dark:text-green-400 dark:hover:text-green-300",onClick:e=>e.stopPropagation(),children:[a,(0,t.jsx)(f.ExternalLink,{className:"size-2.5 shrink-0"})]}):(0,t.jsx)("span",{className:"text-[11px] text-green-600 dark:text-green-400",children:"Ready"}),i?(0,t.jsx)(m.TooltipProvider,{delayDuration:300,children:(0,t.jsxs)(m.Tooltip,{children:[(0,t.jsx)(m.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button","aria-label":"View server logs",className:S,onClick:e=>{e.stopPropagation(),n(!0)},children:(0,t.jsx)(h.Terminal,{className:"size-3.5"})})}),(0,t.jsx)(m.TooltipContent,{side:"bottom",className:"text-xs",children:"Server logs"})]})}):null]}),i?(0,t.jsx)(b,{open:l,onOpenChange:n,targetId:s}):null]});default:return null}}e.s(["DeploymentStatusBadge",()=>w],917466),e.s([],199348);var C=e.i(845811),R=e.i(425235);e.i(541001);var D=e.i(64780),E=e.i(8537),N=e.i(175921);let L=(0,n.cva)("",{variants:{size:{sm:"w-96",md:"w-2xl",lg:"w-[772px]"}},defaultVariants:{size:"sm"}});function T({open:e,onClose:s,modal:l=!1,dismissOnOutsideClick:n=!1,title:o="Drawer",size:c,header:d,children:u,footer:p,className:f,"data-testid":h,deployTarget:x}){let{i18n:m}=(0,D.useTranslation)(),g=(0,N.useFeatureFlags)(),v=(0,r.useRef)(null),y="rtl"===m.dir()?"left":"right";return(0,r.useEffect)(()=>{if(!e||l)return;let t=e=>{let t=e.target;!document.body.contains(t)||v.current?.contains(t)||t.closest(n?'[role="alertdialog"], [role="dialog"], [role="menu"], [role="listbox"], [data-radix-popper-content-wrapper]':'[data-no-drawer-close], [role="alertdialog"], [role="dialog"], [role="menu"], [role="listbox"], [data-radix-popper-content-wrapper]')||s()};return document.addEventListener("click",t),()=>document.removeEventListener("click",t)},[e,l,s,n]),(0,t.jsxs)(C.Drawer,{direction:y,modal:l,handleOnly:!0,open:e,onOpenChange:e=>{e||s()},children:[l?(0,t.jsx)(C.DrawerOverlay,{}):null,(0,t.jsxs)(C.DrawerContent,{ref:v,direction:y,showCloseButton:!1,className:(0,i.cn)(L({size:c}),"bg-white/85 backdrop-blur-xl dark:bg-neutral-800/85",f),"data-testid":h,onInteractOutside:l?void 0:e=>e.preventDefault(),children:[(0,t.jsx)(C.DrawerTitle,{asChild:!0,children:(0,t.jsx)("span",{className:"sr-only",children:o})}),(0,t.jsx)(C.DrawerDescription,{asChild:!0,children:(0,t.jsx)("span",{className:"sr-only",children:o})}),(0,t.jsxs)("button",{type:"button","aria-label":"Close",onClick:s,className:"ring-offset-background focus:ring-ring absolute end-3 top-2 z-50 rounded-sm p-1 opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden","data-testid":h?`${h}-close-button`:void 0,children:[(0,t.jsx)(a.XIcon,{className:"size-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]}),d?(0,t.jsx)(C.DrawerHeader,{className:"shrink-0",children:d}):null,d?(0,t.jsx)(R.Separator,{}):null,g.envDeploy&&x?(0,t.jsx)(F,{deployTarget:x}):null,(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:u}),p?(0,t.jsx)(C.DrawerFooter,{className:"shrink-0",children:p}):null]})]})}function F({deployTarget:e}){let r=(0,E.useDeployAction)(e),a="Booting"===r.status||"Ready"===r.status;return(0,t.jsxs)("div",{"data-testid":"base-drawer-deploy-bar",className:"flex items-center gap-2 px-4 pt-3 pb-3",children:[(0,t.jsx)(m.TooltipProvider,{children:(0,t.jsxs)(m.Tooltip,{children:[(0,t.jsx)(m.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{children:(0,t.jsx)(p,{label:a?"Stop Dev Server":"Start Dev Server",onClick:a?r.stop:r.deploy,loading:r.deployLoading||r.stopLoading,error:!!r.deployError,icon:a?l.Square:s.Play,iconOnly:!0,variant:"outline",size:"icon-sm"})})}),(0,t.jsx)(m.TooltipContent,{children:a?"Stop Dev Server":"Start Dev Server"})]})}),a?(0,t.jsx)(w,{status:r.status,url:r.url,targetId:e.targetId}):null]})}e.s(["BaseDrawer",()=>T],511495)},1650,e=>{"use strict";e.i(511495),e.s([])},670471,e=>{"use strict";var t=e.i(16298);e.s(["FileText",()=>t.default])},43416,e=>{"use strict";let t=(0,e.i(903645).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",()=>t],43416)},949228,e=>{"use strict";let t=(0,e.i(903645).default)("git-branch",[["line",{x1:"6",x2:"6",y1:"3",y2:"15",key:"17qcm7"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["path",{d:"M18 9a9 9 0 0 1-9 9",key:"n2h4wq"}]]);e.s(["GitBranch",()=>t],949228)},211793,e=>{"use strict";var t=e.i(508893);let r=(0,t.createServerReference)("40024b9babaf0ccba2c9644e1719947f9662db82da",t.callServer,void 0,t.findSourceMapURL,"openFolder");e.s(["openFolder",()=>r])},151080,e=>{"use strict";var t=e.i(152155),r=e.i(291967),a=e.i(787342),s=e.i(205978),l=e.i(922528),n=e.i(713123),i=e.i(287620),o=e.i(929297),c=e.i(936589),d=e.i(566033),u=e.i(679606),p="rovingFocusGroup.onEntryFocus",f={bubbles:!1,cancelable:!0},h="RovingFocusGroup",[x,m,g]=(0,a.createCollection)(h),[v,y]=(0,l.createContextScope)(h,[g]),[b,k]=v(h),j=t.forwardRef((e,t)=>(0,u.jsx)(x.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,u.jsx)(x.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,u.jsx)(S,{...e,ref:t})})}));j.displayName=h;var S=t.forwardRef((e,a)=>{let{__scopeRovingFocusGroup:l,orientation:n,loop:x=!1,dir:g,currentTabStopId:v,defaultCurrentTabStopId:y,onCurrentTabStopIdChange:k,onEntryFocus:j,preventScrollOnEntryFocus:S=!1,...w}=e,C=t.useRef(null),R=(0,s.useComposedRefs)(a,C),E=(0,d.useDirection)(g),[N,L]=(0,c.useControllableState)({prop:v,defaultProp:y??null,onChange:k,caller:h}),[T,F]=t.useState(!1),I=(0,o.useCallbackRef)(j),M=m(l),A=t.useRef(!1),[P,z]=t.useState(0);return t.useEffect(()=>{let e=C.current;if(e)return e.addEventListener(p,I),()=>e.removeEventListener(p,I)},[I]),(0,u.jsx)(b,{scope:l,orientation:n,dir:E,loop:x,currentTabStopId:N,onItemFocus:t.useCallback(e=>L(e),[L]),onItemShiftTab:t.useCallback(()=>F(!0),[]),onFocusableItemAdd:t.useCallback(()=>z(e=>e+1),[]),onFocusableItemRemove:t.useCallback(()=>z(e=>e-1),[]),children:(0,u.jsx)(i.Primitive.div,{tabIndex:T||0===P?-1:0,"data-orientation":n,...w,ref:R,style:{outline:"none",...e.style},onMouseDown:(0,r.composeEventHandlers)(e.onMouseDown,()=>{A.current=!0}),onFocus:(0,r.composeEventHandlers)(e.onFocus,e=>{let t=!A.current;if(e.target===e.currentTarget&&t&&!T){let t=new CustomEvent(p,f);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=M().filter(e=>e.focusable);D([e.find(e=>e.active),e.find(e=>e.id===N),...e].filter(Boolean).map(e=>e.ref.current),S)}}A.current=!1}),onBlur:(0,r.composeEventHandlers)(e.onBlur,()=>F(!1))})})}),w="RovingFocusGroupItem",C=t.forwardRef((e,a)=>{let{__scopeRovingFocusGroup:s,focusable:l=!0,active:o=!1,tabStopId:c,children:d,...p}=e,f=(0,n.useId)(),h=c||f,g=k(w,s),v=g.currentTabStopId===h,y=m(s),{onFocusableItemAdd:b,onFocusableItemRemove:j,currentTabStopId:S}=g;return t.useEffect(()=>{if(l)return b(),()=>j()},[l,b,j]),(0,u.jsx)(x.ItemSlot,{scope:s,id:h,focusable:l,active:o,children:(0,u.jsx)(i.Primitive.span,{tabIndex:v?0:-1,"data-orientation":g.orientation,...p,ref:a,onMouseDown:(0,r.composeEventHandlers)(e.onMouseDown,e=>{l?g.onItemFocus(h):e.preventDefault()}),onFocus:(0,r.composeEventHandlers)(e.onFocus,()=>g.onItemFocus(h)),onKeyDown:(0,r.composeEventHandlers)(e.onKeyDown,e=>{if("Tab"===e.key&&e.shiftKey)return void g.onItemShiftTab();if(e.target!==e.currentTarget)return;let t=function(e,t,r){var a;let s=(a=e.key,"rtl"!==r?a:"ArrowLeft"===a?"ArrowRight":"ArrowRight"===a?"ArrowLeft":a);if(!("vertical"===t&&["ArrowLeft","ArrowRight"].includes(s))&&!("horizontal"===t&&["ArrowUp","ArrowDown"].includes(s)))return R[s]}(e,g.orientation,g.dir);if(void 0!==t){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let s=y().filter(e=>e.focusable).map(e=>e.ref.current);if("last"===t)s.reverse();else if("prev"===t||"next"===t){var r,a;"prev"===t&&s.reverse();let l=s.indexOf(e.currentTarget);s=g.loop?(r=s,a=l+1,r.map((e,t)=>r[(a+t)%r.length])):s.slice(l+1)}setTimeout(()=>D(s))}}),children:"function"==typeof d?d({isCurrentTabStop:v,hasTabStop:null!=S}):d})})});C.displayName=w;var R={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function D(e,t=!1){let r=document.activeElement;for(let a of e)if(a===r||(a.focus({preventScroll:t}),document.activeElement!==r))return}e.s(["Item",()=>C,"Root",()=>j,"createRovingFocusGroupScope",()=>y])},619933,e=>{"use strict";let t=(0,e.i(903645).default)("folder-open",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]);e.s(["FolderOpen",()=>t],619933)},208986,e=>{"use strict";let t=(0,e.i(903645).default)("code-xml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]]);e.s(["Code2",()=>t],208986)},237260,788845,806729,e=>{"use strict";let t=(0,e.i(903645).default)("archive",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]]);e.s(["Archive",()=>t],237260);var r=e.i(508893);let a=(0,r.createServerReference)("406f6bfbd22a176bf6d0bca648d1bd1ef29efb8c31",r.callServer,void 0,r.findSourceMapURL,"openIde");e.s(["openIde",()=>a],788845);let s=(0,r.createServerReference)("40cede021cd5c33e6bf9d5871c23ea5e73f6809b4b",r.callServer,void 0,r.findSourceMapURL,"openShell");e.s(["openShell",()=>s],806729)},216868,442076,e=>{"use strict";var t=e.i(943698);async function r(){let e=await fetch("/api/dialog/pick-files",{method:"POST"});if(!e.ok)throw Error("Failed to open file dialog");let t=await e.json();return t.cancelled?null:t.files}e.s(["PaperclipIcon",()=>t.default],216868),e.s(["pickFiles",()=>r],442076)},197667,e=>{"use strict";var t=e.i(301012);e.s(["CheckIcon",()=>t.default])},438227,e=>{"use strict";let t=(0,e.i(903645).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);e.s(["RotateCcw",()=>t],438227)},987889,e=>{"use strict";let t=(0,e.i(903645).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);e.s(["Eye",()=>t],987889)},983299,474363,765104,e=>{"use strict";let t=(0,e.i(903645).default)("archive-restore",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h2",key:"tvwodi"}],["path",{d:"M20 8v11a2 2 0 0 1-2 2h-2",key:"1gkqxj"}],["path",{d:"m9 15 3-3 3 3",key:"1pd0qc"}],["path",{d:"M12 12v9",key:"192myk"}]]);e.s(["ArchiveRestore",()=>t],983299);var r=e.i(679606),a=e.i(152155),s=e.i(83428);e.i(541001);var l=e.i(626960),n=e.i(64780),i=e.i(271326),o=e.i(197667),c=e.i(961569),c=c,d=e.i(205978),u=e.i(922528),p=e.i(291967),f=e.i(936589),h=e.i(23405),x=e.i(277624),m=e.i(685995),g=e.i(287620),v="Checkbox",[y,b]=(0,u.createContextScope)(v),[k,j]=y(v);function S(e){let{__scopeCheckbox:t,checked:s,children:l,defaultChecked:n,disabled:i,form:o,name:c,onCheckedChange:d,required:u,value:p="on",internal_do_not_use_render:h}=e,[x,m]=(0,f.useControllableState)({prop:s,defaultProp:n??!1,onChange:d,caller:v}),[g,y]=a.useState(null),[b,j]=a.useState(null),S=a.useRef(!1),w=!g||!!o||!!g.closest("form"),C={checked:x,disabled:i,setChecked:m,control:g,setControl:y,name:c,form:o,value:p,hasConsumerStoppedPropagationRef:S,required:u,defaultChecked:!T(n)&&n,isFormControl:w,bubbleInput:b,setBubbleInput:j};return(0,r.jsx)(k,{scope:t,...C,children:"function"==typeof h?h(C):l})}var w="CheckboxTrigger",C=a.forwardRef(({__scopeCheckbox:e,onKeyDown:t,onClick:s,...l},n)=>{let{control:i,value:o,disabled:c,checked:u,required:f,setControl:h,setChecked:x,hasConsumerStoppedPropagationRef:m,isFormControl:v,bubbleInput:y}=j(w,e),b=(0,d.useComposedRefs)(n,h),k=a.useRef(u);return a.useEffect(()=>{let e=i?.form;if(e){let t=()=>x(k.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[i,x]),(0,r.jsx)(g.Primitive.button,{type:"button",role:"checkbox","aria-checked":T(u)?"mixed":u,"aria-required":f,"data-state":F(u),"data-disabled":c?"":void 0,disabled:c,value:o,...l,ref:b,onKeyDown:(0,p.composeEventHandlers)(t,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:(0,p.composeEventHandlers)(s,e=>{x(e=>!!T(e)||!e),y&&v&&(m.current=e.isPropagationStopped(),m.current||e.stopPropagation())})})});C.displayName=w;var R=a.forwardRef((e,t)=>{let{__scopeCheckbox:a,name:s,checked:l,defaultChecked:n,required:i,disabled:o,value:c,onCheckedChange:d,form:u,...p}=e;return(0,r.jsx)(S,{__scopeCheckbox:a,checked:l,defaultChecked:n,disabled:o,required:i,onCheckedChange:d,name:s,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(C,{...p,ref:t,__scopeCheckbox:a}),e&&(0,r.jsx)(L,{__scopeCheckbox:a})]})})});R.displayName=v;var D="CheckboxIndicator",E=a.forwardRef((e,t)=>{let{__scopeCheckbox:a,forceMount:s,...l}=e,n=j(D,a);return(0,r.jsx)(m.Presence,{present:s||T(n.checked)||!0===n.checked,children:(0,r.jsx)(g.Primitive.span,{"data-state":F(n.checked),"data-disabled":n.disabled?"":void 0,...l,ref:t,style:{pointerEvents:"none",...e.style}})})});E.displayName=D;var N="CheckboxBubbleInput",L=a.forwardRef(({__scopeCheckbox:e,...t},s)=>{let{control:l,hasConsumerStoppedPropagationRef:n,checked:i,defaultChecked:o,required:c,disabled:u,name:p,value:f,form:m,bubbleInput:v,setBubbleInput:y}=j(N,e),b=(0,d.useComposedRefs)(s,y),k=(0,h.usePrevious)(i),S=(0,x.useSize)(l);a.useEffect(()=>{if(!v)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!n.current;if(k!==i&&e){let r=new Event("click",{bubbles:t});v.indeterminate=T(i),e.call(v,!T(i)&&i),v.dispatchEvent(r)}},[v,k,i,n]);let w=a.useRef(!T(i)&&i);return(0,r.jsx)(g.Primitive.input,{type:"checkbox","aria-hidden":!0,defaultChecked:o??w.current,required:c,disabled:u,name:p,value:f,form:m,...t,tabIndex:-1,ref:b,style:{...t.style,...S,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function T(e){return"indeterminate"===e}function F(e){return T(e)?"indeterminate":e?"checked":"unchecked"}L.displayName=N,e.s(["Checkbox",()=>R,"CheckboxIndicator",()=>E,"Indicator",()=>E,"Root",()=>R,"createCheckboxScope",()=>b,"unstable_BubbleInput",()=>L,"unstable_CheckboxBubbleInput",()=>L,"unstable_CheckboxProvider",()=>S,"unstable_CheckboxTrigger",()=>C,"unstable_Provider",()=>S,"unstable_Trigger",()=>C],257696);var I=e.i(257696),I=I,M=e.i(131777);function A({className:e,...t}){return(0,r.jsx)(I.Root,{"data-slot":"checkbox",className:(0,M.cn)("peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary data-[state=indeterminate]:bg-primary data-[state=indeterminate]:text-primary-foreground data-[state=indeterminate]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 cursor-pointer rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e),...t,children:(0,r.jsx)(I.Indicator,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none",children:"indeterminate"===t.checked?(0,r.jsx)(c.default,{className:"size-3.5"}):(0,r.jsx)(o.CheckIcon,{className:"size-3.5"})})})}e.s(["Checkbox",()=>A],474363);var P=e.i(141957);function z({open:e,onOpenChange:t,onConfirm:o,isDeleting:c,featureName:d,featureId:u,hasChildren:p,hasOpenPr:f}){let{t:h}=(0,n.useTranslation)("web"),[x,m]=(0,a.useState)(!0),[g,v]=(0,a.useState)(!1),[y,b]=(0,a.useState)(!0);return(0,a.useEffect)(()=>{e&&(m(!0),v(!1),b(!0))},[e]),(0,a.useEffect)(()=>{x?b(!0):b(!1)},[x]),(0,r.jsx)(i.AlertDialog,{open:e,onOpenChange:t,children:(0,r.jsxs)(i.AlertDialogContent,{onCloseAutoFocus:e=>e.preventDefault(),children:[(0,r.jsxs)(i.AlertDialogHeader,{children:[(0,r.jsx)(i.AlertDialogTitle,{children:h("deleteFeature.title")}),(0,r.jsx)(i.AlertDialogDescription,{children:(0,r.jsx)(l.Trans,{t:h,i18nKey:"deleteFeature.description",values:{featureName:d,featureId:u},components:{strong:(0,r.jsx)("strong",{})}})})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(A,{id:"cleanup-checkbox",checked:x,onCheckedChange:e=>m(!0===e),disabled:c,"aria-label":h("deleteFeature.cleanupLabel")}),(0,r.jsx)(P.Label,{htmlFor:"cleanup-checkbox",className:"cursor-pointer text-sm",children:h("deleteFeature.cleanupLabel")})]}),p?(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(A,{id:"cascade-delete-checkbox",checked:g,onCheckedChange:e=>v(!0===e),disabled:c,"aria-label":h("deleteFeature.deleteSubFeatures")}),(0,r.jsx)(P.Label,{htmlFor:"cascade-delete-checkbox",className:"cursor-pointer text-sm",children:h("deleteFeature.deleteSubFeatures")})]}):null,f?(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(A,{id:"close-pr-checkbox",checked:y,onCheckedChange:e=>b(!0===e),disabled:c||!x,"aria-label":h("deleteFeature.closePullRequest")}),(0,r.jsx)(P.Label,{htmlFor:"close-pr-checkbox",className:"cursor-pointer text-sm",children:h("deleteFeature.closePullRequest")})]}):null]}),(0,r.jsxs)(i.AlertDialogFooter,{children:[(0,r.jsx)(i.AlertDialogCancel,{disabled:c,onClick:()=>t(!1),children:h("deleteFeature.cancel")}),(0,r.jsx)(i.AlertDialogAction,{variant:"destructive",disabled:c,onClick:()=>o(x,g,!!f&&y),children:c?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(s.Loader2,{className:"me-2 h-4 w-4 animate-spin"}),h("deleteFeature.deleting")]}):h("deleteFeature.delete")})]})]})})}e.s(["DeleteFeatureDialog",()=>z],765104)},903463,681930,e=>{"use strict";var t=e.i(508893);let r=(0,t.createServerReference)("40b195fc3bd3d0b6f99d9ba0ce3b624b5201e8e478",t.callServer,void 0,t.findSourceMapURL,"startFeature");e.s(["startFeature",()=>r],903463);let a=(0,t.createServerReference)("4093cfae5c300fc17a16104784825641972f80a2c2",t.callServer,void 0,t.findSourceMapURL,"stopFeature");e.s(["stopFeature",()=>a],681930)},70311,e=>{"use strict";var t=e.i(508893);let r=(0,t.createServerReference)("40ef132579c95dc894986b34b75cb89dd65b39da86",t.callServer,void 0,t.findSourceMapURL,"resumeFeature");e.s(["resumeFeature",()=>r])}]);
|